Join us as we explore the journey of Alex Delic, Director at Code Development, from his earliest exposure to technology to his fascinating foray into coding. Listen in as we discuss his journey from playing with Raspberry Pi to coding professionally and his unexpected detour into archaeology during his university years.
Unpack how Salesforce’s investment in automated testing can help reduce the burden of manual regression testing and expand beyond just Salesforce applications. Alexander shares his insights on the challenges of UI testing and how MaxTAF can create reusable components for test scripts. In the world of mobile applications, we discuss the benefits and challenges of automated testing.
It’s an episode filled with nostalgia, progress, and personal anecdotes you won’t want to miss.
Show Highlights:
- The concept of automated testing in application development.
- The role of technologies like Sauce Labs and BrowserStack in providing solutions for automated testing of mobile applications.
- The importance of regression testing and the need for rigorous, structured testing methods to catch regressions.
- The open-source technologies like Selenium, UTAM, and Playwright, used for automated testing.
- The challenges and possible solutions for mobile testing.
Links:
- Alex on LinkedIn: https://www.linkedin.com/in/alex-delic-32375874/
- MaxTAF: https://www.maxtaf.com/
Episode Transcripts
Alex Delic:
Well, he tried to tie our hobbies, so things like Lego, into the internet, so he’d find little games for us and things like that. I have some very early memories of playing small internet games that the Lego company was doing back then. That’s a very early memory. I think that’s probably that from that perspective.
Julián Duque:
That’s Alexander Delic, director at Code Development. I’m Julian Duque, your host for the Salesforce Developer podcast, and here on the podcast. We share stories and insights from developers for developers. Today, we are going to talk with Alex about MaxTAF, a framework for text automation. But before we will start, just as we left off, and we often do with his early years.
Alex Delic:
An early experience, I don’t know about first experience, but my father was quite an early adopter of all things technological. I think I had the first experiences for my generation with things like internet and wifi, I would say. I can just about remember, dial up, just about. I remember all the noises that used to make, but I also remember early wifi, and he was always encouraging us to… Well, he tried to tie our hobbies, so things like Lego into the internet, so he’d find little games for us and things like that. I have some very early memories of playing small internet games that the Lego company was doing back then. That’s a very early memory. I think that’s probably that from that perspective. Yeah, it’s an interesting question.
Julián Duque:
Yeah, like building Legos online? There were a platform to be Legos or what were these games about?
Alex Delic:
I don’t think they had that at that point. This is early nineties. What I remember was that in the early 2000s, they had this range of toys that apparently was one of the big contributors to save the company. They weren’t doing so well in the nineties and in the nineties they released these action figure things called Bionicles.
Julián Duque:
Oh, yes.
Alex Delic:
Remember those?
Julián Duque:
I remember those, yeah.
Alex Delic:
Yeah. With Bionicles, they had this whole story and ecosystem in addition to the toys. They had little games where you’d explore their world and things like that. That’s what I’m thinking of a couple of other things here and there, as well. But the thing that came to mind when you said that was me as a five-year-old, waiting for different chapters of this one game to come out. That was through the internet. It was quite impressive what they did to be honest with the technology. This was pre streaming or fast internet speeds. Yeah, very minimalist, but very effective for what it was.
Julián Duque:
Have you ever had the opportunity to play also with Mindstorms?
Alex Delic:
Mindstorms? Yes. That was back then, as well. Are we thinking of the same thing? So this another-
Julián Duque:
This is the robotics.
Alex Delic:
The robotics, yes, I did. I did actually. I remember the little app that it came with. That’s probably the earliest experience of programming that or development.
Julián Duque:
Now, we are getting into the interesting stuff.
Alex Delic:
Now, we’re getting into it. Yes. They had this little, you probably remember this, but they had this yellow control block in the real world, and then they gave you motors and things like that. I remember creating little catapults and that kind of thing, which we’d would fire tissues around the room with, and that was all through that Mindstorms. Man, you brought back. That is a memory and a half that you’ve just brought back to me. Yeah, no Mindstorms.
Julián Duque:
That’s a good memory. I used to teach programming and robotics to kids and teenagers using both Arduino, open source robotic skills and Mindstorms as well. This is why I remember those. I have not been a Lego person. I have a couple of things here, but I have not been deeply into Lego, but definitely Mindstorms for me was game changer to teach STEM abilities to teenagers and kids.
Alex Delic:
Well, I think what’s amazing with that side of Lego, they have their technic stuff, which is, it’s in that physical engineering side of things rather than just blocks building a house. I think that Mindstorms, at the very least, was a really effective application of that where you can physically create wheels that make a controllable vehicle, for example. Or as I say, you can make yourself a very reliably working armature that can fling tissues around the room, as I just said. It’s a good way to create high quality components for machines that then can be programmed. I can see why that would be a game changer for you, yeah.
It’s incredible.
Julián Duque:
Not only engineering coding skills, it involves a lot.
Alex Delic:
Yeah.
Julián Duque:
That really, really sparks the curiosity for a teenager or a child. That’s amazing that we had access to these things. How was your transition to, “Okay, I’m going to be working with code after this,” or “I’m going to be learning something more advanced than just playing with these blocks,”?
Alex Delic:
It is an interesting question. I’m on multiple steps to that. I think when I was a teenager, I was given a Raspberry Pi.
Julián Duque:
Oh, yes.
Alex Delic:
Late teens and I created a couple of little applications there. University, I did archeology, so I wasn’t at all involved in the technical side.
Julián Duque:
Archeology?
Alex Delic:
Yeah.
Julián Duque:
Okay. That’s unexpected, but nice.
Alex Delic:
No, yeah, it’s one of those ones where I didn’t pursue it and chose a different industry. Then following that, I’ve been working a lot on working for the company. I work for now, MaxTAF. I do a lot of the website handling and stuff like that. I have a little bit of a design eye. It really started there just being incredibly frustrated that you know how you want a website to look, and act, and behave and being frustrated that you can’t execute it in the same way you can with your design programs’ tools. I think that’s where I’ve picked it up over five, six years of working and eventually gone on courses and things like that. But yeah, I think the most exposure I’d say I’ve had in my life definitely was just through necessity, if that makes sense.
Julián Duque:
Okay. Very interesting that jump from archeology to go directly to the company you are.
Alex Delic:
Yeah, I think I’ve always been techie and geeky like that, so it’s not like it ever left my mind. I think it was just another thing that I chose to study rather than software itself, perhaps I didn’t want to lose the passion for it.
Julián Duque:
I love it. Did you ever try to mix those two things, like archeology with technology? Maybe back in college, did you do an experiment with those two things or try to do something?
Alex Delic:
Do you know, I never found a way to, it depends on what you mean. At the moment, archeology is being hugely aided by technology. I know that, for example, there was a case study that came from my university where they used Google Maps to find archeological sites because there’s all sorts of… You can see a Roman fort, for example, in the UK just by looking at it from above because the grass grows differently depending on the height of the dirt. There’s walls underneath. But I don’t think I ever managed to marry the two together in any meaningful way. There was a little bit of statistical programming and things like that. But no, I don’t think I ever quite blended those worlds together.
Julián Duque:
But definitely there is a way always, I think right now everything needs or has a technological aspect to it. We have been more and more depending and relying on technology that we can say that almost any company or any profession can have a technological component to it.
Alex Delic:
I think that’s true, and I think there’s a bunch of things that have contributed to that. Obviously, we’re all more used to just technology being in our lives. Whereas 20 years ago, things like the internet even, were treated with a like, “Oh, that’s cool, let’s wait for it to take off,” attitude, but also just computing power. You can do so much more with the resources that are more commonly available. Previously, a supercomputer that would’ve taken up the size of a room now all fits into a laptop that you can buy for 500 quid online. I think that availability of technology is what means that anyone, really, who has an idea can get themselves educated, get themselves learning, and eventually implement a solution to a problem.
Julián Duque:
Yeah. Speaking of computing. Raspberry Pi, I remember the comparison between the first version of Raspberry Pi and the one you have today is quite a leap.
Alex Delic:
Yeah, and that’s just… I can’t remember what the law is. Do you know the law, which is like computing power will in some way, shape or form double either by being more space efficient or by just general technological leaps? Well, that Raspberry Pi is the perfect example of something that’s just continuing to refine on its idea of just being this tiny little brick with so much power. It’s a good metric, I think, for that.
Julián Duque:
Yeah, I’m very excited about the near future because we are in these transition point with both AI and quantum computing that we are leaving pretty much the nacent of those two technologies, how it’s impacting our lives. The next five or 10 years are going to be very, very interesting.
Alex Delic:
Yeah. It’s hard to predict where it’s going to go. I know that OpenAI were doing their work for years before ChatGPT became popularized, even it was available prior to whenever it was last November, really when it really kicked off. But something about the eventual presentation of it just meant that it took off like wildfire and who could predict that it was available before it wasn’t super popular and all of a sudden it exploded. I think what they’d say, it’s the fastest adopted technology in history or something like that by some science. Yeah, I’m really looking forward to seeing, I’m a bit scared as well, to be honest. I’m glad that various governments around the world are taking the speed at which the adoption’s happening and the change in all of our habits very, very seriously because that hasn’t always happened with technological changes.
Julián Duque:
Yeah, well similar to the cloud and software as a service, everything, the whole computing concept change, dealing with licenses, dealing with installing things in my computer, now everything is available on the cloud. I think this is a great way to start talking about MaxTAF.
Alex Delic:
Oh, yes.
Julián Duque:
Can you tell us what that is and what can I do with it?
Alex Delic:
Okay, yes. MaxTAF is a platform that simply put helps with automated testing. We have a number of different industries that we work with. Originally, we came from the enterprise asset management world through an IBM product called Maximo. We helped very configurable… Similar to Salesforce, very configurable application and it’s configured to meet organizational business needs. Wherever there’s configuration, there’s a requirement for testing. Where automated testing and where we come in is really when the burden of testing you have your configurations, you have, they’re often very, very specialized knowledge. The people who can test are often very, very few within an organization. Automated testing can help capture that knowledge, that workflow knowledge, that expected behavior knowledge, and then help make those tests a lot more repeatable, a lot more reliable, a lot less prone to human error. Yeah, we support automated testing for number of places including Salesforce. Where did that come from? Well, recently Salesforce themselves invested into automated testing. A little bit of history for you, Julian, is that Salesforce has typically in historically been really difficult to do automated testing for.
You’ve had a couple of specialist vendors who’ve been fantastic at creating solutions. But the reason why is that because of the regular release cycle and specific things to do with the architecture of Salesforce, every single time Salesforce pushes a release, the UI, all of the IDs and identifiers and things like that change and that will break automated tests. That means that yes, you can put some effort into creating a test script, let’s say, but then as soon as there’s a change rolled out by the organization, that script might break. You need to go in and either fix it or even at the worst case scenario, recreate it.
Recently Salesforce have created this technology that allows them to create these reusable components that the Salesforce organization will be continuously updating and maintaining. Then you can use those components in your test scripts. When a new Salesforce release happens, those components are updated at the same time, those changes get rolled out to your test scripts. That basically means these tests are much, much easier to maintain and work with. What we’ve done is we’ve implemented and integrated that technology into our SaaS platform, MaxTAF, which is a sort of test automation management tool.
Julián Duque:
That’s great. Testing business logic, doing unit testing, even integration testing for me is super important and it can be a simple task, but UI testing, for me, is black magic is super difficult because how can I tell a framework, or a library that something needs to look certain specific way, how to take into account different browsers. I am not a graphical person. You mentioned before that you were a design oriented person and you started this out of necessity, but for me, it’s really, really difficult. Help me understand a little bit how that’s done, how these tools help with the UI testing.
Alex Delic:
When it comes to UI testing, as a developer you probably get involved with a unit testing quite a bit, and unit testing is, obviously, testing blocks of code to make sure those are working. But once it gets into a certain ready state, let’s call it, you’re ready to release, you need to go back through and do what’s called regression testing. Regression testing is really testing the system as is to make sure it’s working as expected. That can only really be done trustworthy, let’s say through the UI. You either… What we’re talking about here is validating your standard things, making sure that your layouts are as expected or the elements are present, that if there are any read-only fields, that they are read-only, that the business logic is correct, that the workflows are implementing the requirements needed. Anything that can be easily validated through clicking by a human.
What we’re talking about with regression testing though is that a human needs to do it. Typically, as I say, the alternative path is automated UI testing. That human typically needs to have a hell of a lot of specialized knowledge. They need to have a plan, they need to have a structure, and then when they’re executing the testing, they’re making sure they’re going through their workflows. They need to be very, very rigorous in their note-taking and making sure that all the validations are there, that they’re not skipping over anything. I’m sure you found this in the experience that if there’s a deadline coming that can often be skipped over, there can often be shortcuts can be taken in that area.
Julián Duque:
Yeah, of course.
Alex Delic:
That almost defeats the whole purpose of regression testing, which is what we are looking for is checking that yes, the functionality is working as expected, but that we also haven’t broken other aspects of the application as well, which we’re not expecting. If you’ve made some configuration at a very deep level of Salesforce, let’s say, you may well have broken another area of the application of the platform. That’s not something that you are going to be easily able to eyeball. You have to just go through a strict list of 50, a hundred, 200 test cases. You’ve got to cast your net and make sure we’re trying to catch what these are, which is regressions, and that’s what we’re doing. We’re doing regression testing. Now, you start to see the picture of why automated testing can be so important, because that is just hours in the day and it’s hours by often very specialized resources whose main responsibility isn’t necessarily testing. Yeah.
Julián Duque:
Nice. Is this only exclusively for Salesforce applications or do you support other platforms?
Alex Delic:
Yeah, so I already mentioned something which we’ve got a lot of support for, which is where we originally came from, Maximo. But actually no, our technology and the Salesforce technology, both of them are actually technology-agnostic.
Julián Duque:
Oh, nice.
Alex Delic:
Without getting into far too much technical detail, I mentioned these components that Salesforce are maintaining and updating. Well, the technology that they’ve created allows them to create new components and you can do that for any application whatsoever. It’s a little bit more effort than it comes to with testing with the Salesforce, I should give them a name by the way. What they’re called is page objects. That’s a strategy that’s used to technically map out the user interface of a system and then be able to use components that can identify those page objects.
Yeah, Salesforce have done all of that on their end, but you can use their technology to do it for any system, for any application. We support both the page objects, we support their technology, but also we have a number of other testing technologies as well that are appropriate in different situations. Some of them are very high programming languages, Java programming, that kind of thing. Some of them make your life a little bit easier, but we’re trying to give a little bit of flexibility so that as many people can get involved with automated testing as possible.
Julián Duque:
Awesome. I’m seeing here that pretty much you are supported by open source technologies.
Alex Delic:
Absolutely.
Julián Duque:
What technologies are you using on this product?
Alex Delic:
Architecturally we’ve got-
Julián Duque:
Not architecturally, like-
Alex Delic:
A standard for… But yes, in terms of the testing stuff, so the biggest tool in the test automation world is called Selenium, which you may have come across once or twice in the past. That is a test automation technology. It is effectively, you feed it with code, it can be in many different languages and you tell it to click on the screen or type. That’s one thing. The Salesforce technology, it’s called UTAM, that’s open source as well. It’s an open source project from Salesforce. In addition to that, we are currently implementing a Microsoft produced technology, I believe, called Playwrights, which has certain advantages in certain areas. Then outside of that we’ve got a bunch of frameworks. We’ve got a graphical reporting framework called Allure, and that gives you a hell of a lot of information once you’ve executed all of your test runs, which can happen through our application, you get a lot of information, timelines, details, did the test past, did the test not pass or did the test break, which is one of the big challenges in automated testing.
For that, Allure is open source. We manage our test execution through a grid system, which is used for distribution of server nodes called [inaudible 00:21:41]. That’s again, open source. Yeah, really one of our big things that we’re really proud of is that whereas teams may get to the functionality that we’ve provided with a lot of hard work using these technologies, we’ve really put it together and made it as easy to use and streamlined and as accessible as possible so that people can benefit from these open source technologies without having to worry about installing and maintaining and everything else.
Julián Duque:
I don’t need to relearn different technology, as well. If I already do UI testing with Selenium, I can use MaxTAF without any issues.
Alex Delic:
Absolutely, yeah. Yeah, it definitely would be a good way to learn something like Selenium, for sure. If there are any budding test automation engineers out there, that’s definitely a way to do it.
Julián Duque:
Nice. This is for web UI, does it also support mobile applications?
Alex Delic:
The UTAM technology doesn’t, we can, it’s a different ball game with mobile because you end up… The real challenge with mobile testing is having either emulation or the physical devices that can allow you to test on all different screen sizes, operating systems and so on. If you want to test Apple products, for example, you literally physically need an Apple device. They don’t let you emulate their software and there are services out there which provide that. As I say, that’s the biggest challenge, definitely are some scripting challenges as well. But yeah, I’d say you are looking at services, I can name a couple, Sauce Labs, BrowserStack, they all have big farms of devices that can enable that emulation across many, many different browsers. That would be the service you’re looking for, for mobile testing, the main challenge of mobile testing. From a scripting perspective, there are open source technologies, as well. Appium is the major one and I think there are a couple of others which don’t come to mind at the moment.
Julián Duque:
Got it, got it. Now you know, folks that are listening right now, if you want to give it a try to automate your tests using UTAM for your Salesforce applications, you can give MaxTAF a try. We will definitely share resources on the show notes. Alex, at the end, you’ll give me all of the different resources, blog posts, videos, and anything that you want us to share with our audience.
Alex Delic:
Absolutely.
Julián Duque:
Do you have anything else to say about this amazing product to whoever is listening us?
Alex Delic:
Yeah, I suppose if I were to just drive home, the main message is that if you are thinking of adopting test automation and not sure where to start or if you’re at the other end of things, you’re very deep into test automation. You’re finding it to be inefficient or a pain because test automation can be a pain just as much as testing. Then much like Salesforce, it’s really about taking your requirements to the cloud. You don’t need to think about tooling, don’t need to think about maintenance, everything is there for you. Maintenance and support is on us, technology upgrades and improvement is on us. Yeah, it’s end-to-end test automation, scripting, operations, scheduling, reporting, execution, everything handled all within one app.
Julián Duque:
This is beautiful. Alex, while you are not building these test automation tools, what do you usually do for fun? What is one hobby of yours?
Alex Delic:
Well, I can think of a recent hobby. I recently completed a jigsaw puzzle that was 6,000 pieces.
Julián Duque:
6,000 pieces? That’s a of patience for me.
Alex Delic:
It was a lot of patience. Well, I enjoy it. It’s good fun. There’s a certain, it’s not for everyone, but there’s a certain… I don’t know, dopamine cycle that comes with placing a piece and going “Yeah,” and then going for the next one. There’s a lot of satisfaction. Would I do a 6,000 piece puzzle again? I’m not sure. It was so big I had to do it on the floor and so I was stooping over a lot. I’ve got a lot of aches and pains, which I’m still working off. But yeah, that was a recent thing. Otherwise, I’m always up to different hobbies. This year, a variety of things. Earlier on this year I got into making cocktails at home.
Julián Duque:
Making cocktails, it sounds delicious.
Alex Delic:
Yeah. Yeah, that was the winter hobby. Then the spring hobby, I think we got into planting some plants. I was given a kit, a cocktail garnish plant kit, and I thought “Train my green finger.” I did a bit of that as well. And some of them have survived, so I’m quite happy.
Julián Duque:
That’s good. I don’t have that skill.
Alex Delic:
No. Well-
Julián Duque:
At this household we don’t plant anything.
Alex Delic:
There are definitely high maintenance and low maintenance plants, as I’ve learned, cacti are low maintenance plants, whereas basil or something, which is what I’ve been growing here, I’m just looking at it now, that complains a lot if it doesn’t get its fair share of water. Yeah, there’s entry level planting as well.
Julián Duque:
That’s it. If you want to learn more about this show, head on to developer.salesforce.com/podcast, where you can hear all the episodes and read the show notes. Thank you everybody, and talk to you the next time.