testing - 如何使用量角器在非角度网站中测试日期选择器
问题描述
请帮助正确编写日期选择器的测试。我有一个不可点击的字段,将在其中设置我选择的日期:
<input type="text" class="submit hasDatepicker" placeholder="License Expiry Date*"
name="website_field[bGl==]"
id="website_field_bGl" value="" size="16"
readonly="readonly">
带有打开日期表单的可点击按钮:
<img class="ui-datepicker-trigger" src="images/calendar.png" alt="Select date"
title="Select date">
月:
<select class="ui-datepicker-month" data-handler="selectMonth" data-
event="change"><option value="0">Jan</option></select> ...
年:
<select class="ui-datepicker-year" data-handler="selectYear" data-
event="change"><option value="2000">2000</option></select> ...
和一个脚本:
$(function(){
$( "#website_field_bGljZW5zZSBleHBpcnkgZGF0ZQ"
).datepicker({
changeMonth: true,
changeYear: true,
firstDay:1,
dateFormat: "yy-mm-dd",
showOn: "button",
buttonImage: "images/calendar.png",
buttonImageOnly: true,
buttonText: "Select date",
minDate: "2000-01-01",
yearRange: "2000:+15"
}).attr("readonly", "readonly");
});
我需要设置一个日期,例如:2020-07-14。
这个怎么做?谢谢。
我做了一些原始的事情,它可以工作。但也许有更多的“专业”变体可用?:
var LicenceExpiryDateInputField =
element(by.id('website_field_bGljZW5zZSBleHBpcnkgZGF0ZQ'));
var LicenceExpiryDateButton = $('img.ui-datepicker-trigger');
var LicenceExpiryDateForm = element(by.id('ui-datepicker-div'));
var SelectMonth = $('select.ui-datepicker-month').$('[value="6"]');
var SelectYear = $('select.ui-datepicker-year').$('[value="2020"]');
var SelectDate = element(by.linkText('14'));
LicenceExpiryDateButton.click();
expect(LicenceExpiryDateForm.isPresent()).toBe(true);
SelectMonth.click();
expect(SelectMonth.isSelected()).toBe(true);
expect(SelectMonth.getText()).toEqual('Jul');
SelectYear.click();
expect(SelectYear.isSelected()).toBe(true);
expect(SelectYear.getText()).toBe('2020');
SelectDate.click();
expect(...Here i need to check somehow LicenceExpiryDateInputField on correct data (2020-07-14)...)
解决方案
推荐阅读
- reactjs - React redux proper updating record and reflecting changes on the screen
- amazon-web-services - 带有 aws sign v4 问题的 Spark
- c# - Unity - 将 PHP CURLOPT_SSL_VERIFYPEER False 转换为 C#
- java - 找到总和为 15 的最小数字对
- python - NameError: global name 'name' is not defined when using multiple files and Tkinter
- php - bindParam 正在破坏 SQL 查询
- autodesk-forge - Autodesk Forge - Handling Parameter Updates and Versions
- python - 基本计算器只会添加值
- flutter - 评分为 3.7、4.269 的星星(颤抖)
- reactjs - 使用 useEffect 获取数据时避免旧数据