自学内容网 自学内容网

2. python理解测试驱动与开发中的简并对象

写在前面


**
这本书是我们老板推荐过的,我在《价值心法》的推荐书单里也看到了它。用了一段时间 Cursor 软件后,我突然思考,对于测试开发工程师来说,什么才更有价值呢?如何让 AI 工具更好地辅助自己写代码,或许优质的单元测试是一个切入点。
就我个人而言,这本书确实很有帮助。第一次读的时候,很多细节我都不太懂,但将书中内容应用到工作中后,我受益匪浅。比如面对一些让人抓狂的代码设计时,书里的方法能让我逐步深入理解代码的逻辑与设计。
作为一名测试开发工程师,我想把学习这本书的经验分享给大家,希望能给大家带来帮助。因为现在工作中大多使用 Python 代码,所以我把书中JAVA案例都用 Python 代码进行了改写 。
**
[


1. 编写测试代码

def test_multiplication():
    # 创建一个金额为5的Dollar对象
    five = Dollar(5)
    # 调用times方法进行乘法运算
    product = five.times(2)
    # 断言验证乘法结果是否正确
    assert product.amount == 10
    product = five.times(3)
    assert product.amount == 15

在这个测试函数中,我们期望Dollar类的times方法能够正确地进行金额乘法运算。

2. 编写初始的功能代码

class Dollar:
    def __init__(self, amount):
        self.amount = amount

    def times(self, multiplier):
        # 这里先简单返回一个固定值,使测试能够运行
        return Dollar(0)

3. 改正功能代码以通过测试

class Dollar:
    def __init__(self, amount):
        self.amount = amount

    def times(self, multiplier):
        # 返回正确计算后的Dollar对象
        return Dollar(self.amount * multiplier)

修改后的times方法能够根据传入的乘数正确计算出乘法结果,并返回一个新的Dollar对象。
现在,当我们运行test_multiplication测试函数时,所有的断言都将通过,这意味着我们的Dollar类的times方法已经实现了预期的功能。
通过这个简单的 Python 案例,我们展示了测试驱动开发的完整过程。


原文地址:https://blog.csdn.net/m0_48468018/article/details/145216278

免责声明:本站文章内容转载自网络资源,如侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!