This week I plan to finish the test and have at least 70% of the api code covered. We already have all signup, login, profile and delete account functionality tested and passing. I tried to include the tests in the travis-ci build but it seems to have problems with the neo4j service, neo4j is throwing this error:
Uncaught error when processing result: Neo4jError: 140223444313984:error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol:../deps/openssl/openssl/ssl/s23_clnt.c:827
And I just don’t know why, should I just remove the https code when the code is being executed in travis? Maybe it’s because it does not find the key and certificate, but I don’t see why that would be the case, I’ll try again anyway.
This week I started helping with the testing. I solved the issues that they were facing with the cookie. Marco is creating the web application and, when he was developing, found some bugs in the api, these are already fixed. Marco (and someone else that I’m not aware of, I guess) integrated the firebase chat to the app. That’s nice, altough it’s kind of ugly, but hey, it works.
We know we may have some security issues, in the chat and some parts of the api, but no can do, we are aware of that and will not fix it, we have to finish the things that we need to present in the demo.
This week I worked in setting up the api server. As today (january 20) we have the server up and running with signup and login methods, hashing the passwords. We have mocha tests passing. We wrote the code first and then I started searching for the test framework, but from now on we will start doing test driven development. We will define all the routes we want, what they should they do and how do we expect them to behave (errors, validations, status codes, etc.).
This is the repo for the backend: https://github.com/Web-Moviles-Spring18/Web. I will change the main branch from master to develop (a new one) and tell my team to start using gitflow (maybe I’ll have to tell them to learn it first, I’ll give ’em this tutorial: https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow).
We still don’t have anything for the Android app, but I really, really want to experience using kotlin.
Our project for the semester will be a note keeper app, this app will keep track of the notes you’ve writen as well as its classification and share these notes with other users.
Our note app will have the advantage that you will be able to take a photo from some text and it will extract the text from the image and put it in a note (The image will need to be clear and also be text in its most part). Imagine that a professor wrote something important in the board and then, instead of writing it down by yourself you can take a picture of the board and then have it automatially converted in a note, now you are able to share it with others.
This app will be developed by Francisco, Marco, Estefy and me.
We will be developing in native Android, and will (provably) use the Android OpenCV library and tesseract to perform the text extraction, we will create a nodejs server to share the notes. We’ll test our app following the recomendation of the android developers website.
From this course I really expect to learn how to properly test my code, with all kind of tests, not just unit testing. I expect to learn how to organize my tests and practice everything learned in class in a real project and also practice what I’ve learnend so far in other courses as well.
I expect to work with and be supported by my teammates, and support them as well. I want to have a clean project managment. I expect to read a lot of documentation from testing libraries and from whatever we develop the project on, follow the standards and so on, but not just learn to use one framework but to learn the principles of software testing.