
파이썬 unittest 단위 테스트 프레임워크는 테스트를 건너뛸 수 있는 기능을 제공한다. # 테스트를 건너뛰는 방법 unittest는 다양한 방법으로 테스트를 건너뛰게 만들 수 있다. skip 데코레이터 사용하기 skipTest 호출하기 사용자 정의 건너뛰기 데코레이터를 만들어 사용하기 # skip 데코레이터 사용하기 unittest는 테스트를 건너뛰기 위해 다양한 skip 데코레이터를 제공한다. @unittest.skip(resaon) : 조건 없이 데코레이트된 테스트를 건너뛴다. @unittest.skipIf(condition, resaon) : 조건이 참이면, 데코레이트된 테스트를 건너뛴다. @unittest.skipUnless(condition, reason) : 조건이 참이 아니면, 데코레이트..

파이썬 unittest 단위 테스트 프레임 워크는 기존에 작성했던 테스트 함수를 수정하지 않고 unittest로 실행할 수 있도록 지원한다. # 테스트 함수 예제 만일 unittest를 사용하기 전에 다음과 같은 테스트 함수를 만들었다고 가정해 보자. def testSomething(): something = makeSomething() assert something.name is not None # ... # 테스트 함수를 unittest에 추가하기 테스트 함수를 unittest에 추가하려면 unittest의 FunctionTestCase를 사용하면 된다. import unittest def testSomething(): name = 1 # ... assert name is not None if __n..

파이썬의 unittest 단위 프레임 워크는 테스트 스위트(test suite)를 제공한다. 보통 테스트 케이스를 실행하면, 해당 테스트 케이스의 모든 테스트 메서드를 실행한다. 하지만 테스트 스위트는 테스트하려는 기능에 따라 원하는 테스트들을 모아서 실행할 수 있게 된다. 테스트 스위트는 다음과 같은 항목을 같이 묶을 수 있다. 테스트 메서드 테스트 스위트 테스트 케이스 # 테스트 스위트에서 사용할 테스트 케이스 테스트 스위트에 사용할 테스트 케이스는 다음과 같다. import unittest class TestCase1(unittest.TestCase): def test_testcase1_1(self): print("test_testcase1_1") self.assertTrue(True) def te..

파이썬에서 테스트 주도 개발(TDD)을 적용하기 위해 unittest 단위 테스트 프레임워크를 사용해 보자. # 테스트 케이스 단위 테스트의 기본은 unittest.TestCase를 상속한 테스트 케이스 클래스가 된다. 이를 테스트 케이스라고 한다. 테스트 케이스는 각 테스트 메서드에 동일하게 필요한 준비(setUp)와 그와 관련된 정리 동작(tearDown)을 정의한 텍스트 픽스처를 가질 수 있다. 테스트 케이스는 특정 테스트 코드를 수행하는 이름이 test로 시작하는 테스트 메서드를 가진다. 그리고 테스트 메서드는 1개 이상의 assert 메서드를 가져야 한다. 테스트가 실패한다면 그 이유를 설명한 메시지가 포함된 예외가 발생한다. 다음은 테스트 케이스를 설명하기 위한 간단한 예제 코드가 된다. im..

파이썬에서 테스트 주도 개발(TDD)을 적용하기 위해서 unittest 단위 테스트 프레임워크를 사용해 보자. # unittest는? unittest 프레임워크는 자바의 JUnit으로부터 영감을 받아 다른 언어의 주요 단위 테스트 프레임워크와 비슷한 특징을 가지고 있다. niitest는 파이썬을 설치 시 내장되어 있기 때문에 바로 사용할 수 있다는 장점도 있다. # unittest 중요한 개념 ## 텍스트 픽스처 (test fixture) 텍스트 픽스처는 1개 또는 그 이상의 테스트를 수행할 때 필요한 준비와 그와 관련된 정리 동작에 해당한다. setUp(), tearDown(), setUpClass(), tearDownClass()가 여기에 해당한다. ## 테스트 케이스 (test case) 테스트 케..
# 테스트 주도 개발 테스트 주도 개발(Test-Driven Development, TDD)은 소프트웨어 개발 방법론 중 하나이다. 보통 개발 프로세스는 개발이 이루어진 다음 그것이 계획대로 잘 완성되었는지 테스트 케이스를 작성하고 테스트를 진행한다. 하지만 테스트 주도 개발은 테스트를 먼저 작성한 후 코드를 작성한다. # TDD 개발 순서 테스트 주도 개발은 아래의 과정을 계속 반복한다. 1. 실패하는 테스트 케이스를 먼저 작성한다. 2. 테스트 케이스를 통과하는 코드 작성한다. 3. 작성한 코드에서 중복 코드를 제거하는 등의 리팩터링 한다. # TDD의 장점 1. 객체 지향적인 코드 생산 2. 재설계 시간의 단축 3. 디버깅 시간의 단축 4. 테스트 문서의 대체 가능 5. 추가 구현의 용의 함 # T..

# 아나콘다? 파이썬은 기본적으로 패키지 관리자인 pip를 제공한다. pip를 통해서 수많은 라이브러리를 설치할 수 있는데, 라이브러리들도 내부에는 다른 라이브러리를 의존하고 있다. 여기서 문제점이 발생한다. 만약 A라이브러리와 B라이브러리가 C라이브러리를 의존하고 있는데, A와 B 라이브러리가 서로 다른 버전의 C라이브러리를 의존하고 있다면 A나 B라이브러리 중 하나를 사용할 수 없게 된다. 이를 해결하기 위해서 A, B, C 라이브러리가 서로 호환될 수 있는 버전으로 설치를 해야 할 것이다. 아나콘다를 이런 라이브러리같의 호환성을 유지하면서 최대한 많은 라이브러리를 설치시 바로 사용할 수 있도록 도와준다. 그래서 아나콘다는 pip도 사용할 수 있지만, conda라는 패키지 관리자를 제공한다. cond..

안드로이드 스튜디오와 플러터 SDK를 설치하고, 첫 플러터 프로젝트를 생성해 보자. 1. 프로젝트 생성하기 먼저 플러터 앱 프로젝트를 생성해 보자. 안드로이드 스튜디오를 실행하고 New Flutter Project를 선택한다. 다음으로 Flutter SDK가 설치된 path를 설정해야 한다. 보통 자동으로 설정되니 Next를 클릭한다. Project name에 프로젝트 이름을 설정한다. 여기서는 first_app으로 하였다. 프로젝트 이름은 소문자와 _(언더바)로만 만들 수 있다. Organization은 세상에서 유일한 값이 되어야 한다. 보통 자신의 블로그나 웹 사이트의 도메인을 사용하면 된다. 여기서는 com.example.first_app으로 하였다. 이렇게 두 개만 설정하면 프로젝트를 생성할 수..