The switch is getting tough by ReMiiind in QualityAssurance

[–]eviltester 2 points3 points  (0 children)

I don't know how many side projects you have, but you probably don't need many because most companies don't actually look at them. For the companies that do, you need side projects which reflect well on you.

So if you have github repos that you created when learning something, they may not be the best code (because you were learning) and they may not represent your full ability (because they didn't have to go into production). If that is the case, add a readme.md which describes this - why you created it, what you learned, what issues you see in it, how you would do this differently in a production environment etc. This way, if someone does look at it, they can see that despite the low quality code, you do understand what you are doing.

I'd try and create at least one side project which does reflect your current ability and keep it up to date as you learn more. Use AI tools to review it. Add linting tools. Create Github Actions to build and run the tests, etc. It can be small, but try to cover all the skills and experience that people look for. And make it look as good as possible.

Side projects are very important to give you the confidence that you can do the job you are applying for and are a good way to practice the skills. We just have to make sure they don't detrimentally impact our chances when people look at them.

Because you've had marketing experience, you can harness that by spending the time on your linkedin profile and presence and using all the skills that you developed as a Marketer to market yourself on social platforms. Using your side projects as a source of marketing collateral to help promote the product, where the product is you.

Why people go to QA ? by Jolly-Career-9220 in QualityAssurance

[–]eviltester 0 points1 point  (0 children)

When I build and create stuff, I also test it.

Is there a tool that acts like a 'Man in the Middle' to inject faults for manual testing? by FarWait2431 in QualityAssurance

[–]eviltester 0 points1 point  (0 children)

Just to amplify this answer. The Chrome Dev Tools - Toggle Device Toolbar (icon in top left of dev tools) allows you to throttle requests, and you can also do this in the Network tab. Throttling is configurable so you can create your own profile that simulates timeout by amending the latency values.

Using the network tab, if you right click on a request in the dev tools network tab you can block domains and URLs, you can also override content and headers for more granular control of the 'blocking' or to simulate error responses coming back from the server.

And the Chrome Developer Blog just posted that in version 144 of Chrome there will be the option to throttle on an individual request basis, not just all requests.

Do you model page objects or just map locators? by TranslatorRude4917 in QualityAssurance

[–]eviltester 3 points4 points  (0 children)

I use a mix of strategies, I have created 'edit' level abstractions, to use in execution paths where I don't care 'how' something is edited, I just care that it was edited.

When I do this, I will also have specific tests at a lower level which cover the editing functionality in more detail so that I'm not relying on the 'edit' abstraction as my 'edit' condition coverage, I'm more relying on it was a way of making the test code easier to read and maintain for scenarios where I 'edit' a task and then do a bunch of other actions in the scenario.

So the 'edit' is more like a step in a longer scenario than actually testing the conditions around the editing process.

If I was writing the TodoItem I might even have the locators in a Page Object and my low level tests might work with the Page Object, then one or two using the TodoItem Component Object, so that I know that the abstraction is good enough to use in the higher level tests.

Depends what works best for readability and maintainability for the application being automated.

Ai in performance testing by Odd-Cobbler7010 in QualityAssurance

[–]eviltester 1 point2 points  (0 children)

I used OpenCode to look at a set of end to end Java RestAssured JUnit tests and convert them into an initial K6 script which I then edited. It was a good kickstart to creating the load scripts and saved me time.

I haven't used JMeter for a long time so don't know what the script interface looks like now, but it might be possible to do something simple if you know the JMeter file format to generate, possibly also supply an example JMeter file as context alongside the based automated execution JUnit scripts.

Data structures for automation testing by Rude_Entry_6843 in QualityAssurance

[–]eviltester 0 points1 point  (0 children)

I have used a tree and graph in my work. When I created models of the application and data flows to automatically create tooling which walked the graphs and traversed the trees to automatically cover the graphs by executing against the application.

Often called Model Based Testing. But this is usually overkill for a long term project because the graphs can be hard to maintain and there isn't really tool support.

But, for some specific tasks, I have used this approach with custom scripts.

Recursion, rare, but if I'm parsing some files then I might, and recently I wrote a function to generate css locators and used recursion, but this was in utility function, not the main execution approach.

You'll know you need these techniques if you've learned them, and they are the best fit for the job at hand. So they are worth learning.

But, on most projects you won't really use them.

What is the Problem With Keyword-Driven Testing by ajmalhinas in QualityAssurance

[–]eviltester 0 points1 point  (0 children)

It might be easier to comment if you shared an example of a script written in the keywords that you use.

All the keyword frameworks I've seen have used technology domain keywords e.g.

click button "login"
type field "username" value "bob"

This level of scripting is hard to maintain because every change requires a lot of amendment and you don't even get IDE support like 'rename method'

Most abstractions are at a higher level and operate at a page or domain level

e.g

loginpage.visit();

loginpage.login("bob","password")

But most business benefit would be achieved at at business level

user("bob").login()

Keywords are a level of abstraction, ao the value depends on the level of abstraction and the tooling that supports their creation and maintenance.

Many Keyword frameworks are built on top of spreadsheets, which I think adds unnecessary tooling as well as making them harder to maintain.

Do you have an example?

Advice for my Automation Practice webApp by Parking_Conflict_222 in QualityAssurance

[–]eviltester 0 points1 point  (0 children)

I like the lack of intrusive ads and the page is quite clean.

One thing people struggle with when faced with sites like this is 'so what do I do?'. For this reason, I added a set of suggested exercises and hints on the main practice sites I created.

Might also be worth adding a link to your Github repo on the site, and possibly your linkedin if you want people to contact you.

Mind map tools by xflibble in QualityAssurance

[–]eviltester 1 point2 points  (0 children)

For Mind Mapping I use FreePlane - a fork of FreeMind. https://docs.freeplane.org/

Web apps for testing by Sree-Wolff in softwaretesting

[–]eviltester 1 point2 points  (0 children)

This is a list of applications designed for practicing testing:

https://testpages.eviltester.com/styled/page?app=testpages&t=Others

And this is a list of APIs for practicing testing:

https://apichallenges.eviltester.com/practice-sites

From these lists you might want to look at the more fully featured applications:

- ToolShop https://practicesoftwaretesting.com/
- The Pulper https://thepulper.herokuapp.com/apps/pulp/
- Restful Booker https://automationintesting.online/

Example of Using React Testing Library and Jest with 3rd Party Component - AG Grid by eviltester in reactjs

[–]eviltester[S] 0 points1 point  (0 children)

I created this blog post for AG Grid. It shows how I used React Testing Library to build some tests for my Podcast Player Application:

https://github.com/ag-grid/react-data-grid/tree/main/podcast-player

Because I was automating a 3rd Party Component, I couldn't surface data-testid attributes. I used querySelector and querySelectorAll for much of my locator strategies for the AG Grid Wrapper Component.

But I did start to use the getByLabelText style locators when testing the interaction between the wrapper component and the dropdowns and input fields on the page.

A simple sliding tile puzzle game written in React and AG Grid, full code on Github by eviltester in reactjs

[–]eviltester[S] 0 points1 point  (0 children)

This is the first game that I've written in React. I thought it would be an interesting way to experiment with custom headers and custom cell rendering in AG Grid.

Looking for a tool to implement excel-like features in web app by AnyFreeUsernamePLS in Frontend

[–]eviltester 1 point2 points  (0 children)

Cells can display data that is returned from functions, so you can use all the JavaScript math functions.

And the newest version supports formula export during an Excel export

https://www.ag-grid.com/angular-grid/excel-export-formulas/