的3个URL
我编写了一个量角测试代码,该代码将拉动博客的URL。每次新的博客文章时,最后一个URL都会更新,并将显示在网站上。我想检查URL是返回404还是200。如果有404,测试将失败。以下是我的代码
describe('Writing to wiki how', function() {
browser.waitForAngularEnabled(false);
browser.sleep(1000);
it('test commmunity', function () {
browser.get('https://www.debtconsolidationcare.com/');
browser.sleep(5000);
var knowhowimg = element(by.id('knowhowimg')).getAttribute("src").then(function (value) {
console.log(value); //want to test if this returns 200
browser.sleep(5000);
});
var knowhowimghref = element(by.id('knowhowimghref')).getAttribute("href").then(function (value) {
console.log(value); //want to test if this returns 200
browser.sleep(5000);
});
var knowhowheadhref = element(by.id('knowhowheadhref')).getAttribute("href").then(function (value) {
console.log(value); //want to test if this returns 200
browser.sleep(5000);
那3个控制台。log返回正确的URL。我想测试Console.log
您要寻找的请求包。
示例用法:
var request = require('request');
describe('Writing to wiki how', function() {
browser.waitForAngularEnabled(false);
browser.sleep(1000);
it('Tests Community', function() {
element(by.id('knowhowimg')).getAttribute("src").then(function (value) {
request(value,function(error, response, body){
console.log('error:', error); // Print the error if one occurred
console.log('statusCode:', response && response.statusCode); // Print the response status code if a response was received
expect(response.statusCode).toBe(200);
});
});
});
不使用请求软件包(由于必须全部加载页面而可能需要更长的时间(
describe('Writing to wiki how', function() {
browser.waitForAngularEnabled(false);
browser.sleep(1000);
it('Tests Community', function() {
element(by.id('knowhowimg')).getAttribute("src").then(function (value) {
browser.get(value);
expect(element(by.css('div.ElementOnNewPage')).isPresent()).toBeTruthy(); //define an element that exists ONLY on the new page here
});
});
主要区别在于您正在检查下一页上显示的元素,从而证明了该页面已加载。