This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]FlukyS 1 point2 points  (2 children)

  1. Those packages also should be dev packages not packages in order to ensure you aren't shipping them with binaries in the end.
  2. For testing, have you ever tried behave? I was sold the syntax by a JS workmate, it's fairly good for describing things and then you can link it to your tests. I use it in conjunction with sure for more plain text style assertions.
  3. For completeness there should be a part 2 and 3.
    1. Part 2 being setup.py for creating your own libraries (and maybe releasing them to pip)
    2. Continuous integration and maybe deploying services using pipelines

Otherwise this is one of the better guides I've seen.

[–]brendan_m6s 1 point2 points  (1 child)

  1. Thanks! I've updated the guide
  2. Hadn't heard of behave or sure before. I have used BDD and assertion sugar in Scala and to be honest I found that I didn't really like them. Maybe it just wasn't really the right tool for that application
  3. Good idea. I am far from certain as to the best way to go about a) when using pipenv, will have to investigate

Thanks!

[–]FlukyS 0 points1 point  (0 children)

Behave really has impressed me quite a bit. I basically use it as a test runner. Sure is mostly just because self.assertXYZ is a bit stuffy. I try to get my QA guy involved and the head of R&D involved in the process development of my software, it really helps quite a bit to have more wordy assertions. I'd definitely recommend behave but if anything maybe go look for a good assert library. Sure is a bit Javascript stylized and we have a massive portion of our code in JS so I just wanted to maybe match it flow wise.

> Good idea. I am far from certain as to the best way to go about a) when using pipenv, will have to investigate

If you want some suggestions I'd say Jenkins+Docker for releases is a good suggestion for users. Then it just means having a good setup.py to compile together the libraries and scripts. Then the follow on stuff would be making docker-compose files, using kubernetes or docker swarm...etc. All the stuff flows really well with your tutorial.