zoukankan      html  css  js  c++  java
  • pytest_demo_实战2_fixture应用

    1、py文件所在文件夹下创建 __init__.py 文件

    2、文件夹目录下:创建conftest.py  

    import pytest
    
    # @pytest.fixture() 里面没有参数,那么默认scope="function", 也就是此时的级别 function,针对函数有效
    """
    firture相对于setup和teardown来说应该有以下几点优势
    
        命名方式灵活,不局限于setup和teardown这几个命名
        conftest.py 配置里可以实现数据共享,不需要import就能自动找到一些配置
        scope="module" 可以实现多个.py跨文件共享前置
        scope="session" 以实现多个.py跨文件使用一个session来完成多个用例
    """
    @pytest.fixture()
    def test():
        print("pytest测试")

    3、创建 test_02.py

    """
    小说网站
    """
    
    import pytest
    import requests
    import urllib3
    from lxml import etree
    urllib3.disable_warnings()
    
    
    class Test:
    
        s = requests.session()
        uri = "https://so.88dush.com"
    
        def test_01(self, test):
            url = "{}/xiaoshuo/130/130340/".format(self.uri)
    
            resonse = requests.get(url, verify=False)
            resonse.encoding = 'gb2312'
            selector = etree.HTML(resonse.text)
            chapter_list = selector.xpath('//div[@class="mulu"]/ul/li/a/text()')
            print(chapter_list)
    
    if __name__ == '__main__':
        pytest.main(["-s", "test_02.py"])

    4、右键运行

    ============================= test session starts ==============================
    platform darwin -- Python 3.7.3, pytest-4.6.1, py-1.8.0, pluggy-0.12.0
    rootdir: /Users/edz/PyLearn/gengmei/pytest_learn, inifile: pytest.ini
    plugins: html-1.20.0, allure-pytest-2.6.4, cov-2.7.1, rerunfailures-7.0, metadata-1.8.0, celery-4.3.0collected 1 item
    
    test_02.py                                                              [100%]
    
    =========================== 1 passed in 1.41 seconds ===========================
    
    Process finished with exit code 0
    pytest测试
    .['1、酒馆打烊了', '2、时间重启游戏', '3、这堆垃圾,人人有份', '4、这是你想的?', '5、连升三级', '6、技能卡', '7、摆正心态,游戏人生!', '8、天大的乌龙!', '9、难,好难,太难了!', '10、她来了吗?', '11、底气决定态度', '12、没有做不到,只有想不到!', '13、朱达昌的中级卡', '14、这不是钱不钱的问题', '15、定了一个小目标', '16、你懂个P的996!', '17、镇住了!', '18、熟练度在提升', '19、生活的幸福感', '20、一个都没猜对!', '21、我是一个摄影师!', '22、这话说得没毛病!', '23、哥哥真棒!', '24、你快乐,所以我快乐!', '25、人生如梦,梦如人生', '26、陪你慢慢玩', '27、你还真是谦虚!', '28、有压力才有动力啊!', '29、这是在挥锄头吗?', '30、怎么啦,我是你哥!', '31、难道是在做梦吗?', '32、居然还可以这样玩?', '33、这又演的哪一出?', '34、我真的不想跳槽啊!', '35、装,还跟哥装!', '36、知己知彼,百战不殆', '37、能力越大,责任越大', '38、完了,不来了!', '39、得来全不费工夫', '40、真是恍然如隔世啊!', '41、这是要搞事情啊!', '42、果然心动了!', '43、人果然都是逼出来的!', '44、这家伙真是任性', '45、二个字:从容', '46、好人有好报啊!', '47、你不是小孩子了', '48、还真是巧啊!', '49、这个梗我不熟啊', '50、好久不见,老铁们!', '51、这玩意来钱不?', '52、出事了,快点来!', '53、正确答案只有一个', '54、他是真懂行!', '55、你们一个都逃不掉', '56、究竟是谁的电话', '57、还是太年轻啊', '58、来一把试试', '59、我现在就是人生赢家', '60、信你个鬼!', '61、大师级的操作', '62、这哪里是青铜啊?', '63、你开一个给我看看!', '64、老哥有些飘了', '65、要学会花钱,才懂得赚钱', '66、端回去重做吧!', '67、吃的这一口讲究', '无题', '69、肾上腺飙升的刺激游戏', '70、不要不要,太吓人了!', '71、意外,绝对是意外!', '72、哥,你太坏了!', '73、兄弟,在哪儿高就啊?', '74、这抽的啥啊?', '75、开天眼了吗?', '76、好像在哪见过', '77、一步,两步,三步', '78、这是鱼皮?', '79、真是不容易啊!', '80、你信吗?', '81、无形装逼最致命', '82、这猫,你还要吗?', '83、哥会骗你吗?', '84、有一说一,不吹不黑', '85、暴富的捷径', '86、看看到底有多高!', '87、不要害人害己哦', '88、老江湖,套路深', '89、有兴趣来玩玩吗?', '90、择日不如撞日', '91、呃……剧本不对啊?', '92、它注定是我的']

    5、命令行执行

    python3 -s test_02.py 

    作者:含笑半步颠√

    博客链接:https://www.cnblogs.com/lixy-88428977

    声明:本文为博主学习感悟总结,水平有限,如果不当,欢迎指正。如果您认为还不错,欢迎转载。转载与引用请注明作者及出处。

  • 相关阅读:
    15. DML, DDL, LOGON 触发器
    5. 跟踪标记 (Trace Flag) 834, 845 对内存页行为的影响
    4. 跟踪标记 (Trace Flag) 610 对索引组织表(IOT)最小化日志
    14. 类似正则表达式的字符处理问题
    01. SELECT显示和PRINT打印超长的字符
    3. 跟踪标记 (Trace Flag) 1204, 1222 抓取死锁信息
    2. 跟踪标记 (Trace Flag) 3604, 3605 输出DBCC命令结果
    1. 跟踪标记 (Trace Flag) 1117, 1118 文件增长及空间分配方式
    0. 跟踪标记 (Trace Flag) 简介
    SpringBoot + Redis + Shiro 实现权限管理(转)
  • 原文地址:https://www.cnblogs.com/lixy-88428977/p/11727965.html
Copyright © 2011-2022 走看看