我在java语言中使用 selenium webdriver,我添加了testNG 框架,以便在UAT测试中更有效率。
我需要每30分钟一次,每天365次,每次365次。
所以每天48次测试,每年意味着17520次(每天365 * 48次测试)
我的问题是:"方法","类","或代码......"在selenium webdriver或至少java中,我可以用来设置这个频率的测试吗?
谢谢大家的帮助。
此致 RBO
答案 0 :(得分:1)
您需要配置一个名为CI(=连续集成)的东西。 CI软件的示例包括Travis-ci,CircleCI或TeamCity。我在我的个人项目和工作中使用travis,我们使用TeamCity。然后可以将CI软件配置为定期运行测试,例如每小时或每次推送到存储库时。
您无法在类或方法中执行此操作的原因是,需要使用外部命令(例如IDE中的播放按钮或CI使用的命令行命令)来启动测试运行。您还可以使用其他软件,如EventGhost并在那里设置计时器,但是您需要让您的计算机全天候运行,很快就会出现问题。像travis这样的CI可以为您完成所有这些工作(它们为每次测试运行生成一个新VM,它们保存测试结果的历史记录,......),您唯一需要做的就是配置它一次然后像以前一样写下你的Selenium测试:)
答案 1 :(得分:0)
以下是您的问题的答案:
确实,将TestNG
集成到您正在使用Java语言的selenium webdriver的框架中是一个明智的步骤。
现在,当你说I need to run my tests every 30 minutes, every day, 365 times each year
时,基本上意味着频繁的代码/脚本更改&在您的框架中集成,您想要测试它。这称为连续集成。
截至目前,您已经熟悉Java Framework
和TestNG
,距离Continuous Integration and Continuous Delivery Toolchain
的安排只有一步之遥。那就是 Jenkins 来帮助你。
Jenkins 是一个独立的开源自动化服务器,可用于自动执行各种任务,例如构建,测试和部署软件。 Jenkins可以通过本机系统软件包安装,甚至可以由安装了Java Runtime Environment的任何机器独立运行。
推荐要求:
Jenkins发行版需要至少Java 7,但建议使用Java 8。建议使用RAM超过512MB的系统。
整合步骤:
如果您熟悉通过命令行执行TestNG测试,配置Jenkins以运行测试是一项分钟任务。
您可以在此处找到 Detailed Documentation of Jenkins 。
如果这回答你的问题,请告诉我。