BDD之Behave写某站点的自动化登录测试

00 前言

    BDD,即行为驱动开发,用自然语言描述编程。

    程序为一个简单的示例:站点的登录

    环境:Python 3.5

目录及文件结构:

Feature:

--steps

----login.py

--environment.py

--login.feature

    

01 代码

    1.1 login.feature

    

    1.2 environment.py

    

# -*- utf-8 -*-
from selenium import webdriver

def before_all(context):
    context.iatc_url = 'http://iatc.soft.rz/portal/'
    context.driver = webdriver.Firefox()

def after_all(context):
    context.driver.quit()

    1.3  logins.py

# This Python file uses the following encoding: utf-8
#../logins.py

from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions
from selenium.webdriver.common.by import By



@Given('I open url')
def step_impl(context):
    context.driver.get(context.iatc_url)
	
@when('I input username & password, press login')
def step_impl(context):
    context.ele_input_id = context.driver.find_element_by_id("txt_uid")
    context.ele_input_id.send_keys("xx@est.com")
	
    context.ele_input_pw = context.driver.find_element_by_id("txt_pwd")
    context.ele_input_pw.send_keys("Win.12345")
	
    context.ele_btn = context.driver.find_element_by_id("btnLogin")
    context.ele_btn.click()
    
@Then('find login username')
def step_impl(context):

    context.sign_link = WebDriverWait(context.driver, 60).until(
            expected_conditions.text_to_be_present_in_element(('xpath', ".//*[@id='workspace_info']/span[4]"), "Powered By"))
    context.ele_results = context.driver.find_element_by_xpath(".//*[@id='workspace_info']/span[4]")
    context.expected_results = 'Powered'
    print("ele_results: ", context.ele_results.text) 
    context.driver.implicitly_wait(10)
    if context.expected_results in context.ele_results.text:
        assert True
    else:
        assert False
    以上,实现登录自动化


  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zljun8210

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值