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

Selenium Node+Sauce Labs测试:无法完成任务

傅嘉悦
2023-03-14
const { driver } = require('./config');
const { By, until } = require('selenium-webdriver');

describe('Integration test', function () {
  this.timeout(20000);

  it('can login as test user', function () {
    driver.get('https://www.example.com');
    driver.wait(until.elementIsNotVisible(driver.findElement(By.id('vale'))), 8000, 'Vale cannot fade');
    driver.findElement(By.name('email')).sendKeys('test_user@test.com');
    driver.findElement(By.name('password')).sendKeys('password');
    return driver.findElement(By.id('authFormSubmitButton')).click();
  });

  after(() => {
    console.log('Quiting driver');
    // This does not work!
    driver.quit();
  });
});

顺便说一句,我用本地的ChromDriver测试了上面的代码,结果一切都运行得很好-Driver在任务完成后立即退出。

任何帮助或想法都是感激的。

共有1个答案

宗政天逸
2023-03-14

driver.quit()之前需要return

Mocha不是调用done(),而是接受一个promise作为返回值。如果一个测试返回一个promise,Mocha会理解它是异步的,并在传递到下一个测试之前等待promise被解析。

这篇文章很有价值。

 类似资料:
  • 我正在设置我的第一个Jenkins服务器来构建和测试现有的maven项目,而jenkins无法完成单元测试。 当我从命令行运行“mvn清洁安装”时,所有模块都会构建并通过它们的单元测试。然而,Jenkins只能运行第一组单元测试(通过),然后以某种方式出错。 我用的是詹金斯1.499。 以下是来自顶级pom报告插件的一些相关信息:

  • 我在KieWorkbench中创建了业务流程,并按照如下方式构建了jar:业务流程:流程ID:myWorkflow。过程 创建任务-参与者:myUser1 提交任务-Actor: myUser2 GAV:组:com.mycom.app.bpm 神器:myWorkflow 版本:1.0 根据我的要求,我需要在一个模块(Test1.war)中创建任务([First task]start and com

  •  说明 调用方法1: $.f2eAct.task(el,options); 函数说明: 该方法完成主要调用joinAndFinish完成任务,会根据接口返回的奖品类型显示不同文案,如卡玛、实物、谢谢参与等。 当获取的奖品数量大于1时,会默认触发 $(".js-package").click(); 事件,所以需要在JS里定义.js-package点击方法。 使用的时候需要在相应dom元素添加 da

  • 我是Activiti 6.0.0的新手,我创建了一个带有用户任务的进程,第二个用户任务有两个表单属性,但当我完成第一个用户任务并试图完成第二个用户任务时,表单属性不显示,我无法完成用户任务… 下面是我的bpm流程:

  • 问题内容: 我有一个文本框,当我输入一个字母说“ s”时,它会显示结果列表(例如google搜索)。 我正在使用带有Java的最新Selenium Webdriver。 我努力了 即使在每个步骤之后都添加了等待,这些都不起作用。 有什么建议? 谢谢。 更新:- 更新2:- 更新3:-我尝试使用Selenium 1,fireevent方法通过将参数作为’keydown’传递而起作用。目前,这应该是一

  • 我正在使用一个Selenium/JUnit测试环境,我想实现一个类来执行“软断言”:这意味着我想让它记录断言是否通过,但在明确地告诉它验证断言之前,测试用例不会失败。这样,我可以检查页面上的多个字段,记录所有不匹配的字段。 我的“Verify”方法如下所示(/也存在类似的方法): 一旦验证了所有字段,我就调用以下方法: 目前,我只是使用来快速使测试用例失败;然而,这会使日志变得杂乱无章,导致一个无