使用梦魇检查当前页面网址

时间:2018-04-24 02:25:00

标签: node.js typescript nightmare

我正在使用Nightmare.js和打字稿编写自动化测试。这项测试的第一个目标是测试我是否登陆了正确的页面。

我做了一些研究,但没有找到对我有用的东西。

这是我的代码:

 import * as Nightmare from "nightmare";

 describe("Login Page", function() {   this.timeout("30s");

   let nightmare = null;   beforeEach(() => {


 nightmare = new Nightmare({ show: true });   });

   describe("give correct details", () => {
     it("should log-in, check for current page url", done => {
       nightmare
         .goto(www.example.com/log-in)
         .wait(5000)
         .type("input[type='email']", "username")
         .type("input[type='password']", "password")
         .click(".submit")
         .wait(3000)
         SOMETHING THAT SHOULD CHECK URL HERE
         .end()
         .then(result => {
           done();
         })
         .catch(done);
     });   
}); 
});

它说什么"有些人应该在这里检查网址"我想要将当前url放入变量以供以后参考,然后再调用console.log。感谢所有答案

1 个答案:

答案 0 :(得分:0)

有很多方法可以做到这一点。我将使用最简单的解决方案。

// galleryTop and galleryThumbs 
galleryTop.controller.control = galleryThumbs;
galleryThumbs.controller.control = galleryTop;

// galleryThumbs and galleryTabs 
galleryThumbs.controller.control = galleryTabs ;
galleryTabs.controller.control = galleryThumbs;

您可以随意更改它。

注意:全球变量被认为是不好的做法。上面的代码段仅用于说明let SOMEGLOBALVAR; // so we can access it later // Codes in between ... .click(".submit") .wait(3000) .url() // <-- use the built in url .end() .then(url => { SOMEGLOBALVAR = url; // set it to a global variable if you want done(); }) 函数。