首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Selenium WebDriver:所有@测试模块应该相互连接吗?

Selenium WebDriver:所有@测试模块应该相互连接吗?
EN

Stack Exchange QA用户
提问于 2018-03-02 09:33:16
回答 2查看 194关注 0票数 1

1.所有自动化测试模块是否应相互连接?

  • 例如,当我有一个@Test模块进行注册时,在执行该模块之后,我可以将这个测试连接到@Test,@Test到@Test配置文件吗?在我目前的设置中,注册、登录、忘记密码和编辑配置文件模块都是一次执行的。

2.这样做是一种良好做法吗?

3.还是让每个@Test模块彼此分开?

  • 我还没有深入研究TestNG。目前,我只使用了@Test、@BeforeTest、@AfterTest注释。我希望你能给我一些启示。谢谢各位。我使用的是Selenium (JAVA)和@TestNG
EN

回答 2

Stack Exchange QA用户

回答已采纳

发布于 2018-03-02 17:07:18

好的做法是每个测试都是自主的。也就是说,没有任何测试依赖于另一个测试的输出。

原因很简单,因为如果一个测试失败了,您就可以重新运行这个测试并解决问题。如果它们必须以特定的顺序运行,那么您总是必须通过所有的测试来找出问题所在。

考虑以下四种测试:

  1. 创建一个新帐户
  2. 编辑帐户地址
  3. 编辑帐户密码
  4. 将信用卡添加到帐户中

当信用卡测试失败时会发生什么?是因为在添加信用卡时出现了问题,还是因为在早期测试中出现了错误?在调试时,您必须按顺序运行所有四个测试,以检查您的工作。

这也排除了只运行3号测试作为烟雾测试的可能性。您必须同时运行测试1和2,很难在测试中设置限制,以选择性地阻止测试4的运行。

现在假设你有100个测试..。200次测试..。每次您想要添加/编辑测试时,您都必须运行整个策略,这将在等待进入您想要的测试的同时,增加大量的停机时间。

所有这一切,你总是可以做你想做的,什么是最适合你的情况。

票数 3
EN

Stack Exchange QA用户

发布于 2020-01-23 09:50:14

将每一个案件分开处理总是一个好做法。但在某些情况下,您可能会将一个测试的依赖性添加到另一个测试上。例如,有两个测试“TestA”和“TestB”。如果您在'TestB‘上添加了'TestA’的依赖项,那么在本例中'TestB‘只有在通过’TestA‘时才会执行。

代码语言:javascript
复制
 @Test(dependsOnMethods={"testA"})
 testB(){
 }  
票数 0
EN
页面原文内容由Stack Exchange QA提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://sqa.stackexchange.com/questions/32360

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档