1.新建工程文件
打开RubyMine,新建一个工程文件目录如下:
login_mail.rb文件
# encoding:UTF-8
# #language: zh-CN
# frozen_string_literal: true
#
当(/^用户打开163邮箱登陆页面$/) do
@driver.goto('https://mail.163.com')
sleep(2)
end
而且(/^用户输入账号和密码$/) do
@driver.div(id: 'loginDiv').iframe.text_field(name: 'email').set($user)
sleep(2)
@driver.div(id: 'loginDiv').iframe.text_field(name: 'password').set($pwd)
sleep(2)
end
而且(/^用户点击登录按钮$/) do
@driver.div(id: 'loginDiv').iframe.a(id: 'dologin').click
sleep(3)
end
那么(/^用户应该看到邮箱logo$/) do
element = @driver.element(id: 'h1Logo')
expect(element.exists?).to be true
end
config.rb文件
# frozen_string_literal: true
$user = '***'
$pwd = '***'
env.rb文件
## frozen_string_literal: true
require 'watir'
require 'cucumber'
require 'rspec'
hook.rb文件
# frozen_string_literal: true
Before do
@driver = Watir::Browser.new :chrome
sleep(2)
@driver.window.maximize
sleep(2)
end
After do
@driver.close
end
login_mail.feature文件
#language: zh-CN
功能: 测试登录163邮箱
场景: 正常登录流程
当用户打开163邮箱登陆页面
而且用户输入账号和密码
而且用户点击登录按钮
那么用户应该看到邮箱logo
2.执行用例
在RubyMine打开终端,输入如下命令:
cucumber features/login_mail.feature -f html -o test.html
则得到测试报告如下: