This has been reported before, but I’m reposting for visibility (the other thread is being ignored) & because it’s quite important:
The “cleanup” button, when testing locally with multiple clients, doesn’t work. At all. It only closes the window that I pressed it on. The other windows remain open. This is so frustrating to deal with when you’re running hundreds of tests day after day. It’s a necessity and should be fixed ASAP.
Why can’t you just bump the original report by replying to it? Duplicate reports like this just clog up the system and ultimately result in a longer wait time for a response.
Edit: Just noticed you already bumped it and a staff member has already had it submitted internally, so this is just a blatant duplicate report. When this one is reviewed, it’ll just be closed like other duplicates have been.
I think it was designed this way. If you click on the cleanup button for a client, it just closes that client. However, if you click the cleanup button the on window that you started the test from, it closes everything, including the server.
I have ran into situations where if you close the clients, sometimes what happens is if you close it from the main window, it will close the server but not the clients. When it starts doing that, it will do it all the time.
Basically, only the parent can get the information about the child process that it created. So since the client is a child of the main window, it’s impossible for the child to close it’s siblings since it does not have the information. Now you can give that child the information, but that involves jumping through some hoops using Windows IPC (Inter-Process Communication) mechanisms. In Unix systems, every process has a parent process associated with it, even if it’s proc 0 (kernel) or proc 1 (init). However, children are not aware of each other for the same reason, and you also have to use the operating system’s IPC facilities.
As for your example, that’s just the help text on the icon. That doesn’t change with context since it’s a fixed string in the resource data, which I think is part of the issue here. The functionality deviates from the text, which is allowed so it leads to confusion as to what it really does. The help text is just a little blurb that gives you an idea as to what the button does.
As I said, I do believe that the cleanup button on the client just cleaning up the client is intentional. To clean them all up, you have to use the cleanup on the main window because it has all the child processes.
EDIT:
Well, I went digging in the documentation for Studio and found this:
And it does say that clicking the button on any test instance will clean up all clients and the server. So going by that, it appears that the issue at hand is a bug. But based on current behavior, I think the document may be wrong. This is actually more common that people realize. As software is developed, the actual functionality deviates from what is in the documentation. The changes to the documentation lags behind the actual development of the software. I think this is what happened here.
An attempt to fix this issue has been released (and turned on) if you are using the latest Studio.
Let me know if you are still experiencing this issue or not.