tom和coco最终还是没能一起吃宵夜。coco临时有点事情,在写完自动生成数据的代码后coco匆匆离去。
第二天一早coco上班时发现代码正常的运行了,100条数据已经生成完毕,coco心中宽慰,对watir webdriver刮目相看。
tom不知道为什么还没来上班,coco其实一直都有在留意tom,tom住的远,一般来的挺早,不会迟到,今天不知为何快到中午了他还没有过来,coco总觉得有点放心不下。
其实tom是因为临时有点事情请了假,他今天有个同学远道而来投奔他,tom一早就去火车站接人去了。
由于数据建立好了,coco今天的工作非常轻松,很快就测完了手头上的活,离下班还有两个小时,coco趁机复习了一下watir-webdriver操作表单的方法。
coco很清楚在测试的过程中填写和提交表单往往是很费时的工作,如果这些操作能通过watir-webdriver来完成的话,那么测试的工作量一定会降低不少。coco去网上查了下watir-webdriver操作表单的代码,好记性不如烂笔头,coco把这些零散的东西整理了一下,她以一个本地的html文件为例子,完成了大部分表单元素的操作。
full_form.html
<html>
<head><title>form</title></head>
<body>
<form>
<label>text_field<input name="user" /></label>
<br />
<label>text_area<textarea name="content" ></textarea></label>
<br />
<label>checkbox<input type="checkbox" name="check_me" /></label>
<br />
<label>radio
<input type="radio" name="man" />
</label>
<br />
<label>selet list
<select name='sex'>
<option value="man">man</option>
<option value="woman">woman</option>
</select>
<br />
<label>button<input type="submit" name="btn" onclick="javascript:alert('button clicked')" /></label>
</label>
</form>
</body>
</html>
由于tom不在,coco独自一人完成操作表单元素代码时费了不少的力气,好在她发现乙醇翻译的watir-webdrier中文官网www.17test.info里面有不少可以参考的东西,在自己的反复尝试下,她终于完成了如下的代码。
operate_full_form.rb
require 'watir-webdriver'
ENV.delete('HTTP_PROXY')
b = Watir::Browser.new :chrome
file_path = 'file:///' + File.expand_path(File.join('.', 'full_form.html'))
b.goto file_path
# 设置单行文本框里的内容
b.text_field(:name, 'user').set 'coco'
# 打印出刚设置的内容
puts b.text_field(:name, 'user').value
# 很好用的flash方法,直接高亮要定位的元素
b.text_field(:name, 'user').flash
# 清除单行文本框中的内容
b.text_field(:name, 'user').clear
# 往多行文本框中写入内容
b.text_field(:name, 'content').set 'watir webdriver is better than selenium'
# 选择checkbox
b.checkbox(:name, 'check_me').set true
# 清除选择
b.checkbox(:name, 'check_me').set false
# 选择radio
b.radio(:name, 'man').set
# 返回radio是否被选择
puts b.radio(:name, 'man').set?
# 选择value为woman的选项
b.select(:name, 'sex').select 'woman'
# 返回选中的选项
puts b.select(:name, 'sex').selected_options
# 点击按钮
b.button(:name, 'btn').click
# 关闭浏览器
b.close
coco把她认为重要的地方都用注释写了下来,这样几天以后再看这些代码,coco也能清楚的知道里面到底干了些什么。
完成这些以后coco觉得心情不错,一天工作结束之后,coco难得的准时下班。
天色还是很早的,很少在日落前下班的coco在离家两站的地方下了车。tom就住这附近,coco准备从这里走回去,也许在路上会遇到她想见的人。
走了一会coco果然远远的看到tom了,不过他不是一个人。tom和一个女孩子并肩走着,有说有笑,手里还提着购物袋,里面有牛排和红酒。
coco很识趣的闪到了一边,没有让tom发现她。夕阳如血,孤零零的照着coco身上,她觉得有点冷,有点孤单。