Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Matplotlib를 사용하는 코드에 대해 단위 테스트를 작성하려면 어떻게 해야 합니까?

<시간/>

코드에 대한 단위 테스트 사례를 작성하기 위해 배열을 x 포인트로 취하고 y=x^2로 플롯하는 플롯을 고려할 수 있습니다. 테스트하는 동안 y_data를 추출합니다. x 데이터 포인트에 대해.−

단계

  • 메서드 생성, 즉 plot_sqr_curve(x) plot()을 사용하여 x 및 x^2를 플롯하려면 메소드를 입력하고 플롯을 반환합니다.
  • 테스트하려면 unittest.TestCase를 사용하세요.
  • test_curve_sqr_plot() 작성 다음 문장을 포함하는 메소드.
    • x에 대한 데이터 포인트를 생성하여 곡선을 플로팅합니다.
    • 위의 x 데이터 포인트를 사용하여 y 데이터 포인트를 만듭니다.
    • x 및 y 데이터 포인트를 사용하여 곡선을 그립니다.
    • 5단계에서 pt를 사용하여 x 및 y 데이터를 추출합니다.
    • 주어진 표현이 참인지 아닌지 확인하세요.

예시

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()

출력

Ran 1 test in 1.587s
OK