An (almost) Shameless Plug for my Beginner Friendly Project for #Hacktoberfest
Tags: python, testing, hacktoberfest, contributorswanted
Published: 2019-10-01 01:07:45

I remember when I first started learning to program, everyone told me "you have to contribute to open source projects!" But whenever I perused through Github or Gitlab, the projects all seemed to be so over my head. I know what it's like to want to contribute, but not having any idea where to start. So, I made my current personal project open source and did my best to make it as beginner friendly as possible. Checkout [LuluTest](https://github.com/erik-whiting/LuluTest)

# What is it?
LuluTest is a web testing framework written in Python. The current goal of the project is to be able to write robust browser automation tests with the optimal amount of expressiveness and brevity in the lines of code. In less fancy talk, the browser tests should be short to write, but not so short that you cannot figure out what they're testing.

{% github erik-whiting/LuluTest no-readme %}

# What makes it beginner friendly?

### Documentation
I've done my best to document the steps required for contribution as clearly and concisely as possible; same with setting up the project locally. There is a `SETUP.md` and `CONTRIBUTING.md` file that spells out the steps needed to get started. Finally, there are hopefully enough examples that you can get started even if you haven't done browser automation testing before.

### Discrete and Open-Ended Issues
In the issues section, there are requests for added functionality. The requests are hopefully spelled out clearly. The most important one is for [creating tests for other websites](https://github.com/erik-whiting/LuluTest/issues/15) where we use the framework we are developing to test other people's websites. The point of this is to show us where we are missing functionality.

{% github https://github.com/erik-whiting/LuluTest/issues/15 %}

### I will do my best to help you
This is my personal project, it's true. But for all of Hacktoberfest, I want to help *you* in exchange for helping me. I will:
* Create an acknowledgements section in the project README at the end of the month personally thanking each contributor (unless you don't want to be mentioned)
* I will respond to every pull request within 24 hours (I can't be any faster than that, I have work and school :/ )
* I will work with you on things that don't seem right (in other words, I won't outright reject pull requests without telling you what you can fix in order to get your PR approved)

### Learn Good stuff
The last thing makes it user friendly, at least I hope, is that it teaches something important. Developing testing software forces us to think about testing, which is important in software development. Also, getting used to git, making pull requests, branching, and making good commit messages are all valuable things for programmers to know. Also, I really really want you to write tests with your pull requests, so you might develop some TDD chops along the way.

# Thanks!
I hope this didn't strike a nerve with anyone, plugging my own project and everything. Let me know if you have any questions, you can reach me on GitHub (erik-whiting) or Twitter (@ErikWhiting88) if you have any questions. I look forward to working with you!