check http status code using nightwatch

后端 未结 3 1804
闹比i
闹比i 2021-02-07 15:26

how do I check the HTTP status code using nightwatch.js? I tried

  browser.url(function (response) {
     browser.assert.equal(response.statusCode, 200);
  });
         


        
相关标签:
3条回答
  • 2021-02-07 15:54

    Supplementing to Hilarion Galushka's answer: you can use the perform() command from nightwatch to intergrate request and assert into your nightwatch tests. http://nightwatchjs.org/api/perform.html

    For example:

    module.exports = {
        'test response code': function (browser) {
            browser.perform(done => {
                request('http://stackoverflow.com', function (error, response, body) {
                    browser.assert.equal(response.statusCode, 200);
                    done()
                });
            })
        }
    }
    
    0 讨论(0)
  • 2021-02-07 16:04

    Actually there is no way yet to get the response status of the page using Selenium (https://github.com/seleniumhq/selenium-google-code-issue-archive/issues/141)

    But what you can easily do is require "request" library, make your request to the webpage you want to open in your Selenium tests and validate that response status code equals 200:

    const request = require('request');
    
    request('http://stackoverflow.com', (error, response, body) => {
        browser.assert.equal(response.statusCode, 200);
    });
    
    0 讨论(0)
  • 2021-02-07 16:06

    Try this

        var http = require("http");
        module.exports = {
          "Check Response Code" : function (client) {
              var request = http.request({
                host: "www.google.com",
                port: 80,
                path: "/images/srpr/logo11w.png",
                method: "HEAD"
              }, function (response) {
                client
                .assert.equal(response.statusCode, 200, 'Check status');
                client.end();
              }).on("error", function (err) {
                console.log(err);
                client.end();
              }).end();
             }
           };
    
    0 讨论(0)
提交回复
热议问题