【问题标题】:How an automation script of 100 test cases should be written using selenium webdriver?如何使用 selenium webdriver 编写 100 个测试用例的自动化脚本?
【发布时间】:2015-12-05 18:43:17
【问题描述】:

请解释我是应该为所有测试用例只写一个 java 文件还是为单个测试用例写一个单独的 java 文件

【问题讨论】:

  • 感谢您的快速回复,但我不太清楚。举个例子,我有测试用例,如登录,创建客户并验证它,创建帐户并验证,编辑客户详细信息并验证,编辑帐户详细信息并验证等......那么我应该如何编写脚本......我应该编写一个包含所有测试用例的单个 java 文件,这将非常复杂,或者我应该为 1 个测试用例编写一个 java 文件...

标签: selenium testing automation webdriver


【解决方案1】:

你没有提供足够的细节来给出具体的答案,所以我试着写下一些指导原则。这些原则只是软件设计 101,因此您可能想朝那个方向学习和阅读。

真正的关键问题是:您的测试有多相似。

它们只是值不同

您实际上只有一个测试,您将其放入一个循环中以遍历所有值。请注意,行为也可以是值。在这种情况下,您可以使用Strategy Pattern

它们是同一测试理念的变体 您可能想要一些代表测试元素的类,然后将它们组合成测试。例如元素可能是 TestSteps,然后组合成测试。如果组合真的很简单。将所有内容放在一个类中可能是可行的,但如果有 100 个测试,这不太可能。

完全独立的测试

您可能最好将它们放在不同的类/文件中。但是你可能仍然会发现很多东西可以重复使用(例如 PageObjects),它们应该放在单独的类中。

最后,我预计 100 个测试可能有 50 个类:许多测试类,每个包含 1-20 个测试,它们有很多共享的东西,以及封装常见功能的健康类(PageObjects、Matcher , 预定义的 TestSteps 等等)

【讨论】:

    【解决方案2】:

    根据source 的说法,您应该每次测试使用一个类,但要使用类的继承:

    将每个类视为一个测试用例,并将其重点放在您正在测试的系统的特定方面(或组件)。这提供了一种添加新测试用例(只需创建新类)以及修改和更新现有测试(通过删除/禁用类中的测试方法)的简单方法。通过允许将现有测试(例如,单个方法)轻松组合在一起,它可以极大地帮助组织您的测试套件。

    【讨论】:

    • 推荐/使用继承在一般情况下确实是个坏主意。
    猜你喜欢
    • 2020-02-29
    • 1970-01-01
    • 1970-01-01
    • 2015-10-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-21
    • 1970-01-01
    相关资源
    最近更新 更多