2021-06-24 Junit基本概念

Study Of Unit Testing Tool JUnit

Abstract: This paper studies and summarizes the definition, main features, basic principles and other basic knowledge of JUnit unit test, and verifies it in practice. Its unique annotation and assertion methods greatly facilitates the testing of programmers, and most java development environments have integrated JUnit as a unit testing tool. As an open source software testing tool, JUnit can unit test the code and generate unit test report according to the unit test.
Keywords: JUnit; Unit testing; testing tool.

1.What is JUnit?
JUnit is a Java language unit testing framework. And Unit testing is responsible for the verification of the smallest software design unit (module). According to the description of module function in software design documents, it tests important program branches and finds errors.

2.JUnit annotation
annotation description
@Test: Identify a test case (A) (expected=XXEception.class) (B) (timeout=xxx)
@Ignore: Test cases ignored
@Before: Run before each test method.
@After : Run after each test method.
@BefreClass Run before all tests start.
@AfterClass Run after all tests start.

3.JUnit assert methods
methods description
assertArrayEquals(expecteds, actuals) Check to see if the two arrays are equal
assertEquals(expected, actual) Check to see if two objects are equal. Similar to the equals() method used for string comparisons
assertNotEquals(first, second) Check to see if two objects are not equal
assertNull(object) Check to see if the object is empty
assertNotNull(object) Check to see if the object is not empty.
assertSame(expected, actual) Check to see if the references to the two objects are equal. Similar to using “==” to compare two objects.
assertNotSame(unexpected, actual) Check to see if the references to two objects are unequal. Similar to using "! = "Compare two objects.
assertTrue(condition) Check to see if the run result is true.
assertFalse(condition) Check to see if the run result is false.
assertThat(actual, matcher) Check to see if the actual value meets the specified criteria.
fail() Let the test fail

4.Features
•JUnit is an open source framework for writing and running tests.
•Comments are provided to determine the test method.
•Provides the expected results of assertion testing.
•The running test of the test run is provided.
•JUnit testing allows you to write code faster and improve quality
•JUnit is elegant and concise. It’s not so complicated and it doesn’t take much time.
•JUnit tests can run automatically, check their own results, and provide immediate feedback. There is no need to manually comb through the test result report.
•JUnit tests can be organized into test suites, including test cases and even other test suites.
•JUnit shows the progress of the test. If there is no problem with the test, the bar is green, and if the test fails, it will turn red.

5.Basic principle

  1. Minimization of test cases
  2. Wide coverage, covering business logic, user scenarios and demand points as much as possible, with clear test objectives and no redundant use cases. Test cases cover test strategies
  3. Decidable. For test cases, decidable.
  4. Reproducibility, for the same test case, the execution result of the system should be the same every time
  5. Consider the priority. According to the time, consider the priority of test cases
  6. Test cases are representative, and they should be able to represent the core flow of current business and alternative flow
  7. The language description should be accurate, and the language description of test cases should be accurate and clear.

6.The first try of JUnit
To use Junit in my IDEA, try the charm of software testing so I must install it.
First I downloaded junit-4.13.2.Jar, and add it to the dependencies.
Now create a tested class named Count, which implemented a simple addition:
Then create a new class name CountTest to test the previous class:
Something wrong happened,
I found the solution is add another Jar file, that is hamcrest-core-1.3.Jar, after I added it to the dependencies, the testing is running successfully.

7.References
1.MisterCH.单元测试工具- JUnit的基本介绍[R/OL].简书,2017-04-15 [2021-06-24] https://www.jianshu.com/p/8053eac7fb19;
2.iSuperGifted.详细介绍JUnit单元测试框架(完整版)[R/OL].CSDN, 2018-10-19 [2021-06-24] https://blog.csdn.net/qq_26295547/article/details/83145642;
3.JUnit[S/OL].百度百科 [2021-06-24] https://baike.baidu.com/item/junit;
4.borter.JUnit介绍, JUnit是什么?[R/OL].博客园,2018-09-08 [2021-06-24] https://www.cnblogs.com/borter/p/9608645.html;
5.毛大帅气.JUnit的概念和使用[R/OL].CSDN, 2020-05-25 [2021-06-24] https://blog.csdn.net/q1305488490/article/details/106339454?utm_medium=distribute.pc_relevant.none-task-blog-baidujs_baidulandingword-0&spm=1001.2101.3001.4242

你可能感兴趣的:(2021-06-24 Junit基本概念)