Wish to Learn Junit? Click Here
Top Answers to Junit Interview Questions
1.What is JUnit?
JUnit is a unit testing framework for the Java Programming Language
. It is written in Java and is an Open Source Software maintained by the JUnit.org community.
2.What are important features of JUnit?
Import features of JUnit are:
- It is an open source framework.
- Provides Annotation to identify the test methods.
- Provides Assertions for testing expected results.
- Provides Test runners for running tests.
- JUnit tests can be run automatically and they check their own results and provide immediate feedback.
- JUnit tests can be organized into test suites containing test cases and even other test suites.
- JUnit shows test progress in a bar that is green if test is going fine and it turns red when a test fails.
3.What is a Unit Test Case?
A Unit Test Case is a part of code which ensures that the another part of code (method) works as expected. A formal written unit test case is characterized by a known input and by an expected output, which is worked out before the test is executed. The known input should test a precondition and the expected output should test a post condition.
Learn junit in 9 hrs. Download e-book now
4.Why does JUnit only report the first failure in a single test?
Reporting multiple failures in a single test is generally a sign that the test does too much and it is too big a unit test. JUnit is designed to work best with a number of small tests. It executes each test within a separate instance of the test class. It reports failure on each test.
5.In Java, assert is a keyword. Won’t this conflict with JUnit’sassert() method?
JUnit 3.7 deprecated assert() and replaced it with assertTrue(), which works exactly the same way. JUnit 4 is compatible with the assert keyword. If you run with the -ea JVM switch, assertions that fail will be reported by JUnit.
Wish to Learn Junit? Click Here
6.How do I test things that must be run in a J2EE container (e.g. servlets, EJBs)?
Refactoring J2EE components
to delegate functionality to other objects that don’t have to be run in a J2EE container will improve the design and testability of the software. Cactus is an open source JUnit extension that can be used for unit testing server-side java code.
7.What are JUnit classes? List some of them?
JUnit classes are important classes which are used in writing and testing JUnits. Some of the important classes are:
- Assert – A set of assert methods.
- Test Case – It defines the fixture to run multiple tests.
- Test Result – It collects the results of executing a test case.
- Test Suite – It is a Composite of Tests.
8.What are annotations and how are they useful in JUnit?
Annotations are like meta-tags that you can add to you code and apply them to methods or in class. The annotation in JUnit gives us information about test methods , which methods are going to run before & after test methods, which methods run before & after all the methods, which methods or class will be ignore during execution.
9.What Is JunitTestCase?
JUnit Test Case is the base class, junit. framework.TestCase, that allows you to create a test case
. (Although, TestCase class is no longer supported in JUnit 4.4.)
A test case defines the fixture to run multiple tests. To define a test case
- Implement a subclass of TestCase
- Define instance variables that store the state of the fixture
- Initialize the fixture state by overriding setUp
- Clean-up after a test by overriding tearDown
Each test runs in its own fixture so there can be no side effects among test runs.
Download latest questions asked on junit in top MNC's ?
10.What is Junit Test Fixture?
A test fixture is a fixed state of a set of objects used as a baseline for running tests. Their purpose is to ensure that there is a well known and fixed environment in which tests are run so that results are repeatable.
Examples of fixtures:
- Loading a database with a specific, known set of data
- Copying a specific known set of files
- Preparation of input data and setup/creation of fake or mock objects
If a group of tests shares the same fixtures, you should write a separate setup code to create the common test fixture. If a group of tests requires different test fixtures, you can write code inside the test method to create its own test fixture.