我有下面的代码用于调用 chromedriver。在所有 chrome 选项中,仅当我从 jenkins 模式运行测试用例时,我才需要添加 force-device-scale-factor=0.70 和 high-dpi-support=0.70。
有人可以让我知道如何仅在从 Jenkins 运行时运行特定代码吗?
System.setProperty("webdriver.chrome.silentOutput", "true");
ChromeOptions co = new ChromeOptions();
co.addArguments("--remote-allow-origins=*");
co.addArguments("--start-maximized");
// co.addArguments("--user-data-dir=" + System.getProperty("java.io.tmpdir"));
co.addArguments("force-device-scale-factor=0.70");
co.addArguments("high-dpi-support=0.70");
co.setExperimentalOption("excludeSwitches", new String[] { "enable-automation"
});
co.addArguments("--disable-notifications");
tlDriver.set(new ChromeDriver(co));
最简单的方法是依赖给定环境变量的存在。例如
WORKSPACE
、CI
或 JENKINS_URL
。所有这些通常仅在作为 Jenkins 作业的一部分构建时设置(我会使用 CI
,因为这不是 Jenkins 特定的。
将代码放入
if
块中,在其中检查所选环境变量 (System.getenv) 是否存在。