Week 5 – CST438 Software Engineering

Summarize in a few sentences what you have learned this week.

From our textbook, this week we learned about larger testing. Large tests cover things that unit tests cannot. Unit tests make use of test doubles to eliminate hard to test dependencies. Issues can arise when replacing doubles with the real thing. Unit tests are also limited to the imagination of the engineer who writes them. This means that the test will only test for anticipated behaviors and inputs. In the real world, users come across unanticipated issues. Another detail restricting unit tests is the environment in which it is implemented which is designed to be fast and reliable. This deliberately eliminates the chaos of real dependencies, networks, and data.

In contrast, large tests provide reassurance that the overall system works as intended by verifying the behavior of the system in a more realistic environment.

From our group project (iteration 2), I increased my understanding of the React frontend. I find the use of JSX very practical. It allows us to create and render user interface components by using HTML syntax within JavaScript code. I also needed to do some data validation which led me to learn more about how exceptions are handled in the backend and frontend. The backend uses ExceptionAdvisor.java to catch and manage errors while the frontend uses Message.jsx to display the messages.

Lastly, I continue to improve my GitHub skills. I am becoming more comfortable with pulling from remote repositories, pushing changes, and creating pull requests. I also gained more experience reviewing code and resolving merge conflicts before merging with the main branch.

Comments

Popular posts from this blog