In this chapter, we took a sneak peek at one of the design patterns in Java, which is the command design pattern. We walked through the components of this behavioral pattern and developed the client, invoker, command, and receiver. We also took a look at how to create classes with empty implementations. Finally, we explored the setup of the Selenium Grid node and ran tests in parallel.
This was a very important chapter from a framework design standpoint. In the next chapter, we will touch upon the Data Provider and creating Excel reports. We will then look at TestNG listeners.