Skip to main content

CST 438 - Week 3

This week, we learned about basic project management and the basics of team collaboration in software engineering, including using VCS services such as git, GitHub, and BitLocker. 

We also continued our discussion on test-driven development, including test automation. At work, I know several of my team members who have been working on automation efforts for certain tests for a long time, yet as far as I know it has not been an easy effort due to how complex some of these software items are.

Five key principles in creating automated tests are FIRST, which is an acronym that stands for the following:

Fast: Test cases and test subsets should be relatively quick and easy to run, as well as relevant to current coding tasks.

Independent: Tests should not rely on preconditions created by other tests so only the subsets needed can be run.

Repeatable: Tests should not rely on external factors that cannot be controlled, or values that cannot be controlled.

Self-checking: Tests should be able to determine whether they passed or failed without requiring human checking.

Timely: Tests should be written during development and updated accordingly to reflect code changes.


Comments

Popular posts from this blog

The Final Journal

It's the end of a long, four year journey, and what a journey it has been. I never thought I could pull off finishing my second bachelor's degree four years ago when I first went to that introduction to programming class at my community college. I would like to thank all the friends I've made along the way and the people who have helped me through the last two years. Although it was difficult at times taking class while working 40+ hours a week, I'm proud of myself for making it through. I don't think I'll be a student enrolled in classes anytime soon, but I'll always be a lifelong student. See you all around.

CST 300 - Week 4

Educational Goals My current educational goals are to finish my bachelor's degree in computer science while also gaining a deep understanding of the fundamentals along the way. I have always believed that a solid understanding of the fundamentals goes a long way in any skill since you always refer back to them. When I have gotten stuck on a problem or some skill in the past, I have always taken a step back, broken down things into smaller pieces and remembered my fundamentals, and doing so has helped me through a lot of academic and professional work so far. Although I already know basic programming and data structures, I want to learn more about them and discover new ways of thinking in order to solve complex problems.  Career Goals I started a career as a full-time software test analyst about two months ago. Even though my job doesn't involve a lot of programming, getting a degree in computer science would be really helpful in all aspects of my career, such as identif...

CST 499 - Week 5

This week, our group completed a major milestone in our project by finishing the front end of our application, marking it as a "feature complete". We also conducted our initial round of user acceptance tests and received plenty of useful feedback, comments, and suggestions for the final stages of development and eventual deployment.  As a test engineer, I also interact with end customers doing software system test, so I understand quite well the process of conducting tests and then signing off said tests if they meet all requirements as specified. Since my company must comply with Department of Defense standards, the "rules of engagement" for testing and product acceptance are much stricter than our standards for capstone, but I can imagine similar rules would be applied to other students doing industry projects. Also, I got my first experience writing a test procedure from scratch by myself, as even at my job I am not responsible for writing procedures but I am acc...