【问题标题】:What are TestNG and JUnit frameworks in SeleniumSelenium 中的 TestNG 和 JUnit 框架是什么
【发布时间】:2013-10-19 23:01:33
【问题描述】:

我已经开始通过 YouTube 视频和在线教程学习 selenium..

我现在掌握了在 Java 中创建类、接口、对象、继承、数组、循环的知识。

就 Selenium 而言,我可以通过使用 Firebug/Firepath 工具识别每个元素,使用 Java 语言直接在 Selenium 中实现自动化。

但我经常听说 TestNG 和 JUnit 框架...

  1. 这些是什么?
  2. 它们与硒有什么关系?
  3. 以我的知识量很难把它们捡起来吗 目前拥有?

【问题讨论】:

    标签: java selenium automation selenium-webdriver testng


    【解决方案1】:

    JUnit 是 Java 使用的基本测试框架。它与 selenium 相关,因为如果你正在做任何测试并且你想用 Java 编写测试,你会使用 JUnit 来编写测试,并挂钩到 Selenium。第三个问题的答案很难回答。 JUnit 是基于 Java 的,所以如果你了解 Java,你会没事的。假设你对编程有基本的了解,你应该没问题。

    TestNG 类似于 JUnit,但它不是 Java 的“事实上的”测试框架。

    以下是一些可能有帮助的链接:

    http://testng.org/doc/index.html

    http://junit.org/

    【讨论】:

    • Ok... 说,我想打开浏览器 > 转到 Gmail.com > 输入 uname 和密码 > 单击登录然后注销如果我不使用任何框架,我的代码看起来会有所不同(因为我目前)/如果我使用 Junit / 如果我使用 testNG
    • 是的,与 Selenium 相比,您的代码看起来会有所不同。这还取决于您如何使用 Selenium。上次我检查(这是不久前),如果您使用的是 Web 驱动程序,则必须使用 JUnit。
    【解决方案2】:
    1. 它们是帮助您组织测试的工具。您可以在测试之前/之后定义要运行的内容,可以对测试进行分组,并且更容易报告它们。

    2. 通常与 Selenium 一起提及,因为 Selenium 是一种常用的测试工具。两者配合得很好,但它们是完全分开的。 (Selenium 将您连接到浏览器,TestNG/JUnit 组织测试)

    3. 是的。你应该可以把它们捡起来。它们被设计成相当容易学习。

    【讨论】:

    • 哦,我想我明白你的意思了......所以对于相同的功能,如果我使用 junit/TestNG/ 我不使用任何框架,我将编写相同的代码工作.. 但是当我运行一个测试套件时,它们中的每一个都会以不同的方式处理事情......我在这里吗?
    • 如果您有一个测试函数,该函数的工作方式完全相同。但是,TestNG/JUnit 可以帮助的功能之前/之后会发生什么。如果你有 20 个测试,其中 3 个失败,它会在第一个失败时继续测试所有测试,并告诉你哪些测试失败。基本上,如果你想组织你的测试,你可以使用一个框架。
    • 但是,它不会改变 selenium 的工作方式。
    【解决方案3】:

    JUnit 随大多数 IDE 一起提供,例如 Eclipse 和 NetBeans。有许多使用 JUnit 开发的测试框架。

    TestNG 是一个开源框架。它支持参数化、数据驱动测试、并行执行。 JUnit 对这些不太灵活。

    我更喜欢 TestNG 而不是 JUnit。我已经使用 TestNG for Selenium 开发了开源测试框架。你可能想看看它。

    https://github.com/selenium-webdriver-software-testing/kspl-selenium-helper

    【讨论】:

      【解决方案4】:

      您可以利用您拥有的大量硒和 Java 知识来创建自动化脚本。但是现在,如果您的经理要求您运行所有测试脚本并向他发布通过失败的报告。非常原始的方法是在 excel 中添加测试脚本的名称,通过在 eclipse IDE 或等效程序中一一运行来获取其结果,然后在 excel 中更新结果。

      为避免这种情况,您可以使用 testNG 或 junit。 TestNG 和 junit 是测试框架。自动化的一部分是开发自动化脚本,另一部分是运行它。 Junit & TestNG 帮助运行自动化脚本。其中包括准备测试数据、管理它、运行测试、发布/存储执行报告、清除/删除测试数据。

      您可以轻松获取 TestNG 或 junit 知识,以实现快乐的路径场景。需要付出额外的努力来处理复杂的情况。

      您还会遇到 Jenkins 或 CI(持续集成)等术语。保持热情。其美妙的自动化框架世界。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-07-26
        • 1970-01-01
        • 2016-06-29
        • 2011-10-23
        • 2017-09-08
        • 2011-03-25
        相关资源
        最近更新 更多