• 0
  • 0
分享
  • 随时随地运行脚本,使用Python打包exe文件!——软件测试圈
  • 曼倩诙谐 2023-04-17 11:53:44 字数 1697 阅读 1341 收藏 0

  前言

  我们正常执行自动化测试的代码都是在有Python环境和对应的Python库的环境中进行执行的,那么如何能否将我们的自动化测试代码放到没有python环境的电脑上进行运行呢?

  这个当然时可以的了,只需要将我们的代码打包程exe然后进可以进行在没有安装Python的环境下进行执行了。

  pyinstaller

  pyinstaller属于Python的第三方库,需要进行下载安装。

  安装

  1、通过pip进行下载安装:

pip install pyinstaller

  2、通过pip进行查看是否安装成功:

pip show pyinstaller

1-1.png

  使用方法

  下载安装已经会了,那么就要到了使用方法的阶段了,这里可以通过写一个自动化脚本,然后将其进行打包,其中这里打包有几个常用的选择项。

  命令:pyinstller命令xxxx.py文件(py文件需要绝对路径或者在对应的目录下)。

1-2.png

  常用的命令就这几个,不常用的大家可以通过pyinstaller-h进行查看:

1-3.png

  打包exe文件

  使用方法已经简单的介绍了,这里安静就要编写一个自动化脚本,然后通过Python进行打包成exe文件。

  自动化脚本打包

  下面代码中加入了等待时间,只是为了方便查看,不然打包成exe执行后,一闪而过,不方便查看。

import unittest
import time
class Test(unittest.TestCase):
    def test_01(self):
        print('测试用例-->01')
        time.sleep(1)
    def test_02(self):
        print('测试用例-->02')
        time.sleep(1)
        
    def test_03(self):
        print('测试用例-->03')
        time.sleep(1)
        
if __name__ == '__main__':
    unittest.main()

  在代码的当前文件夹下,通过cmd进行打开后输入命令:

pyinstaller -F test_01.py

  这里的代码文件名时test_01.py,-F是打包成一个可执行程序exe文件。

1-4.png

  可以通过上面看到已经执行成功了,在当前文件夹内出现了两个新的文件夹和一个spec的执行程序。

1-5.png

  其中build文件中是存放着关于打包所以来的文件内容,默认-D生成的,dist文件夹下就是我们打包生成的exe文件,其中spec文件就是告诉我们如何打包py文件内容的。

  进入到dist文件中,直接运行我们的exe文件。

1-6.png

  发现已经可以成功的运行了,当然大家也可以把这个文件放到没有装Python的环境下进行运行,一样是可以运行成功的。

  打包带图标的exe文件

  上面介绍了,想要带图标,那么就需要我们在打包命令的时候加上-i,在加上图标的路径,就可以带图标了。

  这里需要注意要将转换成16*16的ico,这个可以在网上进行查找,很多在线转换ico的工具地址。转换完成后,放到当前目录下,执行命令:

pyinstall -F -i 222.ico test.py

1-7.png

  已经转换成功了,我们继续运行我们的test.exe文件进行查看图标是否已经发生改变:

1-8.png

  虽然模糊,但是可以简单的看出来和下图是一样的。

1-9.png

  注意事项

  这里安静简单的列举下关于pyinstaller的注意事项,其中尽量用fromXXXimportxxx这样的方式导库,这样就会只打包对应的方法文件,避免打包的过程中文件太大。

  总结

  安静简单的通过pyinstaller进行把我们的自动化脚本进行了打包成了exe,这样就可以在不同的环境下进行运行,不用考虑是否安装了Python或者其他的库,也能进行执行我们的脚本了。

  感谢您的阅读,希望能给你带来帮助。



作者:测试安静    

来源:http://www.51testing.com/html/97/n-7795597.html

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          • 导读在自动化测试实践中,测试数据是制造测试场景的必要条件,本文主要讲述了在沟通自动化框架如何分层,数据如何存储,以及基于单元测试 pytest 下如何执行。并通过实践案例分享,提供数据驱动测试的具体落地方案。基本概念数据驱动测试(DDT)是一种方法,其中在数据源的帮助下重复执行相同顺序的测试步骤,以便在验证步骤进行时驱动那些步骤的输入值和 / 或期望值。在数据驱动测试的情况下,环境设置和控制不是硬编码的。换句话说,数据驱动的测试是在框架中构建要与所有相关数据集一起执行的测试脚本,该脚本利用了可重用的测试逻辑。数据驱动的测试提供了可重复性,将测试逻辑与测试数据分离以及减少测试用例数量等优势。设计...
            0 0 624
            分享
          •   你有多久没听过测试策略这个词了?它就像个走失的小孩,慢慢迷失在快速迭代的敏捷潮流中。曾何几时,测试策略是测试活动的重要一环,它指导着整个测试活动的开展,是高阶测试人员必备的技能。今天,我们来聊聊这个被逐渐忽略的测试技能。  1. 什么是测试策略  维基百科上有一大段关于测试策略的定义,这里就不贴出来了,简单来说,测试策略主要关注两个问题:  测什么:测什么是指质量需求是什么、需要关注质量的哪些方面,比如应用的功能范围、性能、安全、易用性等非功能需求。  怎么测:怎么测就是采用什么办法来帮助系统实现质量需求,而不仅仅是手动和自动化的测试方法,也包括一切为质量保障服务的流程、环境、基础设施和人...
            0 0 449
            分享
          • 网上收集到的一些有关Selenium自动化相关的面试,给出的答案仅供参考。1.Selenium中用什么函数判断元素是否存在?isElementPresent2.Selenium中hidden或者是display = none的元素是否可以定位到?不能,可以写JavaScript将标签中的hidden先改为0,再定位元素3.Selenium中如何保证操作元素的成功率?也就是说如何保证我点击的元素一定是可以点击的?添加元素智能等待时间 driver.implicitly_wait(30)添加强制等待时间(比如python中写 sleep)try 方式进行 id,name,clas,x path, ...
            1 1 1096
            分享
          • 测试环境是QA做好检测运行的前提条件。平稳和可控的测试环境,能够使测试人员在实行测试用例时不用花费额外的时间去维护。有一些企业运维或是研发部会帮忙准备好测试环境,可是QA要是一味依赖别的部门,会局限检测运行的做好。一、什么是测试环境测试环境,指为了更好地做好软件测试运行所必不可少的计算机硬件、软件、网络设备、历史数据的总称,简单点来说,测试环境=硬件+软件+网络+数据准备+测试工具。硬件:指检测必不可少的服务器、客户端、网络连接等辅助设备。软件:指测试软件运行时的操作系统、数据库以及其他应用软件。网络:指被测软件运行时的网络系统、网络结构及其别的网络设备组成的环境等。数据准备:一般指测试数据的...
            0 0 527
            分享
          • 本发明涉及车载多媒体主机的测试方法和装置领域,特别是涉及一种车载Android多媒体主机的自动测试方法和系统。背景技术:目前在车载多媒体主机的研发过程中,对车载多媒体主机进行压力测试是不可缺省的一环;对于搭载Android系统的车载多媒体主机,其显示模块会具有HMI功能,因此对其触控功能的压力测试也是必要的。在现有的Android测试领域中,存在不少诸如Uiautomator、Android Studio之类的自动测试软件,但在不同的Android项目中,使用的APK(Android Package,即Android安装包)和APP(Application,即应用程序)大多是不相同的,因此需要...
            0 0 646
            分享
      • 51testing软件测试圈微信