Posts

Showing posts with the label HomeworkFG

DevOps part 2

Image
For this Exercise i decided to use a VM from work because i had issues installing one and tried on a windows based computer and had a very slow internet connection and couldn't install java nor contrab. First i updated Java version. I received some recommendations from other classmates about what server to use so i went for Lamp Server. After tit was properly installed i could run the test to verify if the server was working properly. Contrab was successfully installed.

Python Unit Testing

Image
Simple Smalltalk Testing: With Patterns : Using PyCharm with Pyunit and pytest : I used the oficial Pycharm website example, as recommended from some classmates. Pycharm Example It has a really good guide on how to do a Pytest . I liked the LinkedIn course on TDD for python but is not that good explained. I would've liked more interaction from the from the instructor. WayBackMachine site : I searched for Amazon, and this screenshot ir from 1998.

Intro to DevOps

Image
Credits to @chesteralvarez Image Link What is DevOps? Is the blending of the roles of developers and operations support.  Example: In application service, developers write the code that is deployed* into application service. Operations team maintains the application server. If the application fails to work on deployment there is a knowledge gap. People with knowledge of both software development and operations are required to bridge this gap, this is where DevOps practitioners are required. deployed*: Software deployment includes all the process required for preparing a software application to run and operate in a specific environment. It involves installation, configuration, testing and making changes to optimize the performance of the software. It can either be carried out manually or through automated systems. How it is important to the software engineering process? The software development lifecycle is complex and has a number of important phases which include:...

The Secret Life of Bugs: Going Past the Errors and Omissions in Software Repositories

Image
Credits to @borisworkshop Image Link In all honesty this is a very boring reading, the writing is too complex for the actual content and its meaning. The main idea is: mine software repositories to discover how teams (ought to) coordinate and communicate. For example, can we really assume that if two developers didn’t send each other an email on a particular period then they were working uncoordinated? It’s an (until recently) untested assumption, but that doesn’t seem to give much pause to the researchers in the area. I think the explosion of interest in MSR was motivated by frustration with the difficulty in doing something ’empirical’ in software engineering References: The secret life of bug's

101 on JUnit and Unit testing

Image
Credits to @bryanminear Image Link JUnit is a testing framework/library for Java (programming language). It is used for both unit testing and UI testing. This helps us define the flow of execution of our code. What is Unit Testing? "Unit testing is the process of examining a small "unit" of software (usually a single class) to verify that it meets its expectations or specification" (Washington Courses, 2019) Setting up JUnit By downloading the newest version of Eclipse, you already have JUnit installed.  If not here's a guide on how to set it up:  Tutorial Creating a JUnit Test Case in Eclipse To use properly JUnit you need to create a separate .java file. In this file is were you are actually going to test your class, so name it something significant for example,  BoundedQueueTest  since in the class im going to test is named  BoundedQueue .   **I'm taking this class from the Introduction to Software Testing book by Paul Amma...

Kent Beck TCR

Image
Credits to @tomcoe Image Link Kent Beck explains his 'Alternative work flow ' called Test, Commit or Revert. It consists of making small changes to the code in order to always have the test on green (passed), so as Kent explained on this podcast, if you know that you have to make two changed in order to make the test pass first you need to make the first change but in a way that doesn’t corrupt the test of make the test fail. It's all about keeping the status of the test green. TCR has a big impact on the confidence of a programmer because by having a positive output on a test case that has no other intention that to "break" your code boosts your belief in yourself (in your programming skills or your capacity to debug problems). I was actually surprised when I heard this because I'm used to working the opposite of TCR watching everything turn red and breaking code until you magically fix it. I recently learned TDD (Test Driven Development) in my Sof...