如何从命令行测试标记为可执行的Python模块

时间:2015-09-07 06:20:23

标签: python testing

我有一个Python bin文件集合,它根据逻辑进行一些处理,它让我担心更改可能会导致出现意外错误。为这些bin文件创建单元测试或者哪种测试对他们来说最好是不是太过分了?

为了澄清我写了我自己的Python文件,它充当bin文件(可执行文件),它执行诸如进程逻辑之类的操作然后运行多处理线程,守护进程函数,消耗mq调用等。

我有一个大的python文件,用作这样的bin文件:

<function defs here>
def main():

    global mq, queue, edge_mq, txn_time

    queue = Queue()

    # Clean up stale configs
    cleanup_all_stale_config()

    my_mq = MyMQconnection()
    my_mq.daemon  = True
    my_mq.start()

    mq = CoreMQconnection()
    mq.daemon = True
    mq.start()
    txn_time = time()
    orm.begin()
    sync_configs()
    orm.commit()

    mq.consume("workers", receive_message, no_ack=False, prefetch_count=200)
    my_mq.consume("workers", receive_message, no_ack=False, prefetch_count=200)
    config_thread = Thread(target=update_config)
    config_thread.daemon = True
    config_thread.start()

    while config_thread.is_alive() and mq.is_alive() and edge_mq.is_alive():
        sleep(0.1)

if __name__ == '__main__':
    main()

测试这样的脚本的最佳方法是什么?

0 个答案:

没有答案