【问题标题】:Trying to use my Java test code with OpenTest尝试将我的 Java 测试代码与 OpenTest 一起使用
【发布时间】:2018-11-05 01:00:38
【问题描述】:

我已经在我的 Ubuntu 16.04 LTS 上安装了 Opentest,并且想要跟踪我的自动化代码通过/失败成功率。我能够连接到本地主机服务器,但在那之后我很困惑。我有一个已成功创建的 java 文件,它可以自动执行登录功能。

我已经完成了我的研究并找到了这个示例,但似乎找不到这个包在哪里。

package org.getopentest.selenium;

import org.getopentest.selenium.core.SeleniumTestAction;
import org.getopentest.annotations.TestActionArgument;
import org.getopentest.annotations.TestActionClass;
import org.getopentest.annotations.Type;
import org.openqa.selenium.By;
import org.openqa.selenium.WebElement;

其他例子:https://github.com/mcdcorp/opentest/tree/master/actor/selenium/src/main/java/org/getopentest/selenium

我似乎找不到那个包在哪里,我想继续用 Java 编码而不是切换到 YAML。如果您对如何让我的自动机进入 Opentest 有任何想法,请发表评论。谢谢。

【问题讨论】:

    标签: java selenium automation opentest


    【解决方案1】:

    如果您想创建新的关键字来执行某些 OpenTest 核心包开箱即用不可用的功能,您只需编写 Java 代码。这相当简单:您创建一个从org.getopentest.base.TestAction 类继承的类并覆盖run 方法以执行测试操作的逻辑。但是,您正在创建的这个新关键字只能在 YAML 中使用。如果你是一名熟练的 Java 程序员,你可能会倾向于坚持你所知道的并避免使用 YAML 方法,但请记住这种方法给你带来的好处:提高开发速度、提高可维护性和可读性、更短、更自我包含测试、轻松编排分布式测试或数据驱动测试的能力等等。

    由于每个测试都存储在自己的文件中,因此您和团队的其他成员可以轻松浏览它们、在目录之间移动它们以重新组合/组织它们等等。

    当您需要在测试中编写更复杂的逻辑(循环、条件等)时,您可以使用script actions 将 JavaScript 代码嵌入到测试流程中的任何位置。如果需要,您甚至可以access the full Java runtime library from JavaScript code,尽管您只能在不得已的情况下这样做。

    请给 YAML 一个机会。我保证你很快就会欣赏它。但是,请确保使用支持 YAML 的现代文本编辑器。 VS Code 在我的经验中是完美的(而且也是免费的),但我敢打赌 Atom、Sublime 或其他人也可以做到。

    【讨论】:

    • 安装 opentest 后我也无法在我的文件系统上找到它们 - 来自 repo https://github.com/mcdcorp/opentest/tree/master/actor/selenium/src/main/java/org/getopentest/selenium 的操作类实际位于哪里?
    • @CuriousGuy OpenTest 文件位于 npm 安装模块的目录中,这可能因许多事情而异,但通常是 C:\Users\<YOUR_USER_NAME>\AppData\Roaming\npm。您要求的路径是C:\Users\<YOUR_USER_NAME>\AppData\Roaming\npm\node_modules\opentest\node_modules\opentest-actor\jars\opentest-selenium-0.0.1.jar
    猜你喜欢
    • 2021-05-15
    • 2015-07-23
    • 2019-03-05
    • 1970-01-01
    • 2018-06-08
    • 2016-03-25
    • 2013-12-25
    • 2014-09-01
    • 1970-01-01
    相关资源
    最近更新 更多