如何解决如何从量角器测试的下一页获取数据?
我正在自动进行航班预订测试。在主页上输入航班的凭据,单击提交按钮,浏览器转到包含搜索结果的页面。
const EC = protractor.ExpectedConditions;
describe('Delta airlines booking sample',function () {
const toAirportName = element(by.id('toAirportName'));
const toAirportNameSearchInput = element(by.id('search_input'));
const berlinCityAirport = element(by.css('li.airport-list:nth-child(1)'));
const tripTypeSelector = element(by.id('selectTripType-val'));
const tripTypeOneWay = element(by.id('ui-list-selectTripType1'));
const departmentDateLabel = element(by.id('calDepartLabelCont'));
const departureDate = element(by.xpath("//a[@aria-label='5 November 2020,Thursday']"))
const departureDatePickerDone = element(by.xpath("//button[@aria-label='done']"));
const buttonBookSubmit = element(by.id('btn-book-submit'));
const errorMessage = element(by.id('advance-search-global-err-msg'));
beforeEach(function () {
browser.get('https://www.delta.com/');
browser.manage().window().maximize();
});
it('should have to airport destination field clickable',() => {
toAirportName.click();
toAirportNameSearchInput.sendKeys('Berlin \n');
berlinCityAirport.getText().then(text => {
text.includes('BER') ? berlinCityAirport.click() : console.log('Wrong search result');
});
tripTypeSelector.click();
tripTypeOneWay.click();
departmentDateLabel.click();
departureDate.click();
departureDatePickerDone.click();
buttonBookSubmit.click();
browser.wait(EC.presenceOf(errorMessage),10000);
expect(errorMessage.getText()).toEqual("Uh-oh! We're sorry,but no results were found for your search.We have adjusted our flight schedules and some of our flights only operate seasonally or on select days of the week.Try changing your cities or dates for additional results.#101763R");
});
});
如您所见-我没有使用任何pageobject。我正在尝试从searchresult页面获取错误代码,因为它是主页的一部分(很天真,对吗?)。由于新页面的URL包含?cacheKeySuffix=....
,因此每次测试运行时都会对其进行更改。
如何从搜索结果页面获取数据?
如何
解决方法
因此,如果我正确理解这一点,则您正在尝试检查错误消息是否正确显示,但是您需要知道那里没有飞往柏林的航班。
端到端测试必须可靠地运行。如果您无法(以编程方式)访问该数据,我认为对其进行测试不是一个好主意。您应该已经知道,甚至在考试开始之前就没有飞往柏林的航班。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。