当前位置: 首页 > 知识库问答 >
问题:

测试和硒网格

伯俊弼
2023-03-14

我使用appium和java自动化Android应用程序。作为一个初学者,我想知道TestNG和网格之间的区别。冲浪,但不能得到答案。

共有1个答案

边永贞
2023-03-14

TestNG是一个测试运行程序,允许您执行以下操作:

  1. 帮助您调用特定的方法作为测试方法
  2. 帮助您定义安装和拆卸,就像定义运行测试所需满足的进入和退出条件一样
  3. 帮助您根据某些分类对测试方法进行逻辑分组,以便轻松运行测试组
  4. 帮助您定义测试之间的依赖关系,以便它们模拟您手动测试的方式
  5. 帮助您构建数据驱动的测试方法,以便可以使用不同的数据集运行相同的测试
  6. 帮助您定义如何运行测试(测试是按顺序运行还是可以同时运行)
  7. 为您提供一些基本报告,还允许您构建自定义报告
  8. 允许您定义侦听器,以便根据不同的事件(例如,测试开始、测试完成、测试通过、测试失败、测试跳过等)进行一些特殊处理

还有更多。

Selenium Grid是一种机制/实用程序/工具,可以帮助您在远程环境中运行测试。它允许您将测试指向网格,网格基本上将在不同的环境中运行测试(不需要与本地桌面相同)。既然你提到了appium,下面是一个典型的用例。假设您正在尝试运行一些iOS自动化测试,但您只有一台windows机器可供使用。

如果您设置了一个网格环境,使其有一个在OSX机器上运行的节点,那么由windows机器上的测试运行程序派生出来的测试可以委派并路由到远程OSX机器上执行。

网格包含两个部分。

  1. 集线器-想象一下这就像一个管理器。它基本上从你的桌面上获取运行一个新测试的请求,找出哪些节点(附加到它)可以运行这个测试(基于功能),如果找到匹配,测试就被路由到那个特定的节点。
  2. 节点-想象这就像一个团队成员。这是一个组件,它实际上完成了打开浏览器的工作,并执行了您的测试试图完成的所有用户操作。
 类似资料:
  • 注: 在testng xml中,如果我将parallel=更改为类或方法,那么它可以很好地运行测试,但它不是并行地一个接一个地运行测试。 如果我保持parallel=“tests”,那么它会并行运行,但它会在同一个VM中打开同一个浏览器三次,这是不正确的。 我的设置: 我设置了11个虚拟机,每个盒子上的每个浏览器都初始化了Selenium网格节点。我已经创建了testng xml,以便在每个框上运

  • 我一直在周而复始地试图弄明白这一点,在Selenium网格集群上使用cucumber和maven并行选项几乎是不可能的。 我的跑步者根据标签跑步,应该会选择5到6个特征文件。 我使用Cucumber for Java、Maven surefire 2.19和Junit。 到目前为止,pom的surefire配置如下所示:- 我的跑步者看起来像这样:- 我和马文一起跑步:- 清洁测试-P RunFe

  • 我正在设置在网站上运行的自动化测试,以确保一切仍然正常工作。我有一个显示记录表的网页。 我想测试加载选定的网页 我已经完成了前3个步骤,但我仍停留在第4步。有人能帮忙吗?谢谢康纳

  • 我尝试在本地运行chrome扩展的测试。 我有selenium服务器(v.3.141.59)。 我有chromedriver(2.44节) 我有chrome浏览器(v.70.0.3538.110) 和selenium-webDrive npm包(v.^4.0.0-alpha.1) 我的NodeJs代码成功创建新的chrome会话 但是 1) 当我以独立服务器的形式运行selenium server

  • 我一直在尝试用浏览器启动测试,而不是无头。我的代码在中,这应该由构建。在上。 有人试过吗,或者你知道我应该采取什么步骤吗?我正在通过网上提供的教程,但没有一个适合我。 我当前的错误是: java.io.:无法运行程序cmd(在目录/var/lib/jenkins/作业/测试/工作区):错误=2,没有这样的文件或目录在java.lang.ProcessBuilder.start(ProcessBui

  • 假设一个网站有以下结构 类似地,链接3,链接4 现在我需要遍历每个链接Link1,Link2,Link3,Link4来提取最后一页上没有后续链接递归存在的内容。 但目前递归不起作用,它抛出 由于当前页面不同,无法保留旧元素信息,并且页面已移动到新页面,因此会引发错误。 递归搜索内容的最佳方法是什么??? 示例代码段: