Software Development and Project Management

In bottom-up testing, what is built to stand in for a higher-level module that does not exist yet, so that it calls the lower-level module under test, passes it test data and receives the results?

  1. ADriver
  2. BStub
  3. CIn-circuit emulator
Show answer and explanation

Answer: A. Driver

Bottom-up testing integrates modules starting from the lowest level, and because the calling higher-level module does not exist yet, a test program called a driver is written to call the module instead. Conversely, in top-down testing, which integrates from the top, a stub that simply returns fixed values is written to stand in for a lower-level module that does not exist yet. An in-circuit emulator is a debugging device connected to the board in place of the microcontroller, which can stop program execution and observe the internals on the real hardware.

  • A. Correct. It is a test program that calls the module under test in place of the higher-level module.
  • B. In top-down testing, this is the program that is called in place of a lower-level module that does not exist yet.
  • C. This is a debugging device for stopping and observing a program on real hardware, not a substitute module for testing.
Practice this topic Back to topic

Related calculators

Books on Software Development and Project Management Ad

As an Amazon Associate I earn from qualifying purchases.

More Software Development and Project Management questions

  1. During testing, a reliability growth curve was plotted with the test time (or the number of test cases executed) on the horizontal axis and the cumulative number of defects found on the vertical axis. The curve is still rising, with no sign of saturating (leveling off). Which judgment is most appropriate?
  2. In the integration testing of firmware with 25 KLOC (25,000 lines), 30 defects were found. Based on the organization's past results, the guideline for defects found in this phase is 2 to 4 per KLOC. Which is the most appropriate evaluation of this result?
  3. In Git, two developers changed the same line of the same file on different branches, and one branch was then merged into the other. Which describes what happens?
  4. Which method of reviewing design documents or source code is led by a moderator, assigns roles to the participants, is carried out formally using checklists and the like, and records the defects found and confirms their correction?
  5. After a firmware version known to work correctly there are 1,000 commits, and the latest commit has a bug. The bug was introduced by one commit and occurs in every commit after it. When the culprit commit is identified by binary search, as with git bisect, what is the maximum number of times the firmware must be built and tested?