📜  Tesults-项目配置(1)

📅  最后修改于: 2023-12-03 14:47:57.466000             🧑  作者: Mango

Tesults 项目配置

Tesults 是一个功能强大的测试结果平台,它可以帮助你记录测试结果、监视代码覆盖以及管理测试报告。在使用 Tesults 时,你需要将其集成到你的测试代码中并进行配置。本文将为你介绍如何配置 Tesults 项目。

配置 Tesults 项目

要配置 Tesults 项目,你需要完成以下步骤:

  1. 安装 Tesults 依赖:
pip install tesults
  1. 创建 Tesults 账户并登录到 https://www.tesults.com/
  2. 在 Tesults Dashboard 页面创建一个新的项目。
  3. 可以在下拉菜单中找到 API Key/Token,这是 Tesults 对外开放 API 的 key。将其保存在你的测试项目的环境变量中以便在测试时使用。如果没有指定 API key,则 Tesults 将无法接收测试报告。
  4. 在你的测试文件中添加 Tesults 测试集成代码,以确保 Tesults 能够收到测试结果。
Tesults 集成示例
Python 测试脚本
import unittest
import os
from tesults import *


# 定义测试类
class MyTest(unittest.TestCase):

    # 设置测试方法1
    def test_method1(self):
        r = 'pass'
        # 执行测试并记录结果
        self.assertEqual('pass', r)
        # 将结果发送到 Tesults
        payload = {
            "target": "result",
            "results": [
                {
                    "case": "Testing 1",
                    "suite": "Tesults Python Demo",
                    "result": r,
                    "note": "Test note 1",
                    "sub_results": [
                        {
                            "test_data": "testing",
                            "sub_note": "note for sub-result"
                        }
                    ]
                }
            ]
        }
        tesults_conn = TesultsResultsConnection()
        tesults_conn.results(payload)
    
    # 设置测试方法2
    def test_method2(self):
        r = 'pass'
        # 执行测试并记录结果
        self.assertEqual('pass', r)
        # 将结果发送到 Tesults
        payload = {
            "target": "result",
            "results": [
                {
                    "case": "Testing 2",
                    "suite": "Tesults Python Demo",
                    "result": r,
                    "note": "Test note 2",
                    "sub_results": [
                        {
                            "test_data": "testing",
                            "sub_note": "note for sub-result"
                        }
                    ]
                }
            ]
        }
        tesults_conn = TesultsResultsConnection()
        tesults_conn.results(payload)
        

# 设置测试环境变量 API Key
os.environ['TESULTS_TARGET'] = 'Tesults Python Demo' # 可选项,将其设置为你的 Tesults 项目名称
os.environ['TESULTS_API_KEY'] = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxx' # 将 "xxxxxxxxxxxxxxxxxxxxxxxxxxxxx" 替换为你的 Tesults API Key/Token

if __name__ == '__main__':
    unittest.main()
JavaScript 测试脚本
const { tResults, rUpload } = require('tesults');

// 定义测试类
class MyTests {

    // 设置测试方法1
    async testMethod1() {
        try {
            let r = 'pass';
            // 执行测试并记录结果
            if ('pass' != r) {
                throw 'fail message';
            }
            // 将结果发送到 Tesults
            await rUpload({
                target: 'Tesults JS Demo',
                results: [{
                    case: 'Testing 1',
                    suite: 'Tesults JS Demo',
                    result: r,
                    note: 'Test note 1',
                    sub_results: [{
                        test_data: 'testing',
                        sub_note: 'note for sub-result'
                    }]
                }]
            });
        } catch (e) {
            console.log ('Test failed with reason: ' + e);
            throw e;
        }
    }
    
    // 设置测试方法2
    async testMethod2() {
        try {
            let r = 'pass';
            // 执行测试并记录结果
            if ('pass' != r) {
                throw 'fail message';
            }
            // 将结果发送到 Tesults
            await rUpload({
                target: 'Tesults JS Demo',
                results: [{
                    case: 'Testing 2',
                    suite: 'Tesults JS Demo',
                    result: r,
                    note: 'Test note 2',
                    sub_results: [{
                        test_data: 'testing',
                        sub_note: 'note for sub-result'
                    }]
                }]
            });
        } catch (e) {
            console.log ('Test failed with reason: ' + e);
            throw e;
        }
    }
}

// 设置测试环境变量 API Key
process.env.TESULTS_TARGET = 'Tesults JS Demo'; # 可选项,将其设置为你的 Tesults 项目名称
process.env.TESULTS_API_KEY = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxx'; # 将 "xxxxxxxxxxxxxxxxxxxxxxxxxxxxx" 替换为你的 Tesults API Key/Token

(async function() {
    try {
        const myTests = new MyTests();
        await myTests.test_method1();
        await myTests.test_method2();
        console.log('Tests finished successfully!');
    } catch (e) {
        console.log('Tests failed with error: ' + e);
        process.exit(1);
    }
}());
总结

通过本文,你已经了解了如何配置 Tesults 项目,其中包括安装 Tesults 依赖、创建 Tesults 账户、创建 Tesults 项目以及将 Tesults 集成到你的测试代码中。配置 Tesults 项目是为了确保测试结果能够被及时、准确地记录并于一处访问统计信息,从而帮助你了解你的应用程序在各种情况下的性能和稳定性。