Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Cách viết unit test cho code sử dụng Matplotlib

Để viết unit test cho code vẽ đồ thị y = x²:

  • Tạo hàm plot_sqr_curve(x) vẽ x và x², trả về đối tượng plot.
  • Sử dụng unittest.TestCase.
  • Viết test_curve_sqr_plot(): tạo dữ liệu x, tính y = x², vẽ đồ thị, trích xuất dữ liệu x_data, y_data từ plot, so sánh với y, x gốc.

Ví dụ

import unittest
import numpy as np
from matplotlib import pyplot as plt

def plot_sqr_curve(x):
    """Plotting x points with y = x^2."""
    return plt.plot(x, np.square(x))

class TestSqrCurve(unittest.TestCase):
    def test_curve_sqr_plot(self):
        x = np.array([1, 3, 4])
        y = np.square(x)
        pt, = plot_sqr_curve(x)
        y_data = pt.get_data()[1]
        x_data = pt.get_data()[0]
        self.assertTrue((y == y_data).all())
        self.assertTrue((x == x_data).all())

if __name__ == '__main__':
    unittest.main()

Kết quả

Ran 1 test in 1.587s OK