我正在尝试创建以下设置:
我的目标是这个实现应该可以由任何框架执行,而不管框架使用的技术如何。我正在考虑使用Java(servlet)将项目创建为WebService。
我的问题是:
提前致谢。
答案 0 :(得分:1)
您可以创建一个maven项目,并在maven test文件夹下进行自动化测试。配置您的测试以运行POM.xml(使用maven surefire插件)。配置jenkins作业以运行maven测试。任何人都可以访问jenkins可以建立/运行这个任务!
下面的链接应该会给你一个开头 http://learn-automation.com/selenium-integration-with-jenkins/
答案 1 :(得分:0)
事实上,这是我们在其中一个项目上所做的事情。由于我无法分享细节,我将为您提供项目的整体架构视图。
所有事情的核心都是可以对请求运行JUnit测试的服务。这是一个Soap Web服务,但没有什么可以阻止你使它成为REST。要实现这一点,您需要实现您的JUnit测试运行器版本(例如参见:http://www.mscharhag.com/java/understanding-junits-runner-architecture或https://github.com/junit-team/junit4/wiki/Test-runners)
如果您使用JUnit作为运行Selenuim测试的测试框架,这可能是一个很好的解决方案 - 如果您正确配置它,JUnit将为您生成HTML报告,它将隐藏用户的实际测试套件实现并运行测试套件一经请求。这个解决方案也很棒,因为它在JUnit级别上运行,并不关心它实际运行的是什么类型的测试,所以它也可以用于任何其他类型的自动化测试。
所以回答你的所有问题:
任何外部自动化都可以访问此实现 框架? - >是的,任何能够发送http的人都可以访问它 请求
此实施是否有任何限制? - >我不是 知道
有没有更好的方法来实现此要求? - >好吧,我 实际上并没有使用TestNG,所以我不知道是不是 在Junit级别上执行此操作更容易或更困难。您可以使用 Jenkins或其他CI工具也可以实现相同的结果 - 他们可以 为您运行JUnit测试,并且几乎总是为此准备好API, 虽然这些API可能并不完美。
所以我要说,如果您只需要一件事就可以使用CI工具,如果您没有可用的CI工具,那么就可以选择。但是,根据我们的经验,拥有这种服务对公司来说是一笔巨大的财富,我真的很想知道为什么其他地方还没有这样的产品。