ChiPy Spring 18 Mentorship Program — #3

Ryan Miller
Apr 20, 2018 · 3 min read

Before I ramble on about my adventures in programming that took place from my last entry a month ago until now, I want to take a small moment to review with you the mock that I whipped up for what I was hoping to build and give a quick refresher on why the heck we’re doing the things we’re doing.

UX design game so strong out here :flex: :flex:

This is my rough sketch of what I was hoping to build and develop using Python — a Windows application that functions as a central hub for software QAs and test engineers like me to use every day at work. I wanted to build something that had an intuitive, simple interface that would present the tester with options to house, create, edit, import, and execute automated test cases and test suites.

The benefit to this is having everything in a central location and able to be managed from a single piece of software. Any tester will tell you that when you get into making changes to software, introducing new functionalities, meeting business requirements, and sticking to project deadlines, keeping things organized and functional is a challenge in itself. Not only would Chrono Test Manager facilitate this greatly for a tester — it would prove invaluable to a QA team in housing and accessing the tests from a location and being able to execute, edit, and add new cases to a central location.

Kanye West said, “Reach for the stars, so if you fall you land on a cloud.” Kanye also did not design Windows apps or write automated test cases in Selenium with Python. So I mean. Grain of salt.

So for now, we’re gonna go back to small scale. For now, this will be a tool for yours truly to use at the day job.

Shameless script kiddie selfie for my many, many Medium fans. (Actual caption: All aboard the struggle bus.)

Now that we’ve taken a quick look at that (and my face), with a little help and a lot of patience from my mentor, Ed, here’s a look at what progress has been made from then ’til now.

Look, ma! No hands! …Er, once I get these automated tests going…

This was a lot of work, a lot of confusion, a lot of reading, and a lot of troubleshooting — but the end result is gorgeous. Learning to create this in wxPython was really interesting and a ton of fun! Building the widgets and placing them on the panels and frame was a wild endeavor all it’s own, but once I started getting the hang of it, it became pretty slick. We’ve even got a sizer on the frame of the user interface itself, wired up in such a way that we can drag the window to a larger size than it is at launch and everything still fits within the frame, looks nice, and stays functional. The file directory in the main window works and is pretty snappy, and one of the menu events has been wired up. When Open Test Case is selected, our File Explorer launches and is already looking for your .py files to run your tests!

That dynamic frame sizer is just so cool and will be useful for the l o n g b o i s.
Quick demo of the file dir for the main test suite, opening an individual test case from our central test folder, the about button, and closing the software. I can’t believe I built this!

The spring mentorship program is nearing its end, and I’m trying to check off the last lists of things I want to do to make this robust and viable. The major checkpoints are launching an external text editor from Chrono Test Manager in order to edit and save test cases, executing test cases, and importing/moving .py test files from one location to a centrally located (default) folder. Wish me luck!

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store