AutomationStar Conference 2024

My best talk so far !

This talk was especially important to me, even though it was the one I practiced the least. My mom was there for the first time to support me! After spending a month with me, she has already gone back to Brazil 🇧🇷 🙏

She also gave me feedback that I should look around the room more instead of focusing on just one side! 😄

She probably didn’t understand anything, but she was there 😊

But this time I missed all the other talks 😔 I have been working on my startup: The Chaincademy most of my days I am going to sleep around 3am and on the day before my talk I went to sleep at 1am 🙏 . Gladly, nobody noticed that I was a corpse mopping the floor on that day.

Back to what matters! Unfortunately, I don’t have much to share about the other talks this time.
However, at the speakers’ dinner, I had the pleasure of chatting with some amazing speakers:
René Rohner (robot framework and playwright), Mazin Inaad (food and rock bands), Jonathon Wright (the AI guy) , Ana Duarte (why Porto is the best city in Portugal) and Gerard van Engelen (a variety of topics)

This time, I also decided to start a bit differently by being honest about my habit of talking fast at the beginning of sessions. I asked everyone to help pace me if I started speaking too quickly—sorry in advance! 😬

Everyone stayed engaged, even during a 1-hour-and-30-minute session. I felt the hands-on part was a bit rushed and could have been extended, so I’ll keep that in mind for next time.

Just sharing some additional content after my talk: I’ve updated the resources to include some Web3 hackathons and a Web3 Test Mindmap.

Here’s the feedback from this session—apparently, I did well, but not quite well enough to win the award! Maybe that’s why I left right after my talk 😂

It’s okay, though—my mom got emotional and teared up when I started reading the positive feedback, so I’ll count that as a win, even if it’s a bit biased!

Apart from my talk, I also joined Señor Performo in his AutomationStar interview sessions!

Finally met Leandro Melendez.

I’ve known his work for ages, and I also use Grafana a lot at work these days. It was great to exchange tips on public speaking and chat about mutual friends. During the interview, I shared what we’re doing at The Chaincademy, my journey in tech, and how I ended up where I am today.


“As usual, the best part of my talk is testing whether people were really paying attention or if ADHD is getting the best of the crowd. It’s also my favorite part—I love a good competition! 🥋

And that’s a wrap! See you at the next conference or meetup! I’m actually planning to host a webinar on my own soon, so hopefully, you’ll be able to join from anywhere in the world!

EE Global Conference 2024

And this was me again spreading the word about Blockchain and Web3, but this time at the Equal Experts Global Conference 2024. EE is a network of tech professionals that I couldn’t be more proud to be part of ❤️. I am super picky when it comes to work, but this one is a keeper!

While I’m not one to praise companies excessively, I wouldn’t hesitate to recommend Equal Experts as a great place to work and also to have business with. Their integrity and values are rare to find nowadays 😆

In the talk, I covered the basics of Web3, including its key differences from blockchain. As you know, I’ve been discussing these topics for quite some time 😬

Would you like to review the slides? This is a shorter, abridged version of the in-depth presentation I’ll be giving in October at the AutomationStar Conference. Think of it as a preview:

One of the questions I enjoyed receiving was about how blockchain technology, despite being around for a while, is often perceived as new. Blockchain is actually a combination of technologies that have existed for a long time, such as P2P networks and hashing. However, it wasn’t until these components were brought together that blockchain was truly created and its potential realized. Here are a few resources that explore the evolution and history of blockchain.

Here are a couple of resources that explore the evolution and history of blockchain.


Additionally, I attended another talk before mine that focused on UX/UI and user personas. This is another crucial aspect of QA. Understanding the user is essential when designing test scenarios and improving overall quality, not just from a technical standpoint but also from the perspectives of usability and business.

In conclusion, I solicited feedback from the audience and received valuable insights that I’ll incorporate into my upcoming talk at the AutomationStar Conference in Vienna this October.
See you there 👋

Learnings From London Blockchain Conference 2024

The London Blockchain Conference 2024 was an event at ExCel London from 21-23 May 2024 and showed the vast potential of blockchain technology across various industries and applications. And here are my takeaways from the conference and the talks I joined:

Asset Tokenization

  • Tokenization refers to the process of converting real-world assets, such as real estate, art, or collectibles, into digital tokens on a blockchain network.
  • This enables secure and transparent trading of these assets, opening up new opportunities for investment and ownership.

AI Responsibility and Auditing

  • As artificial intelligence (AI) systems become more advanced, there is a growing need to ensure they operate responsibly and without bias.
  • The conference explored ways to establish acceptance criteria for AI responsibility and leverage blockchain technology to audit AI systems, ensuring transparency and accountability.

Blockchain and AI Integration

The integration of blockchain and artificial intelligence (AI) technologies holds immense potential for creating decentralized, transparent, and trustworthy AI systems. Here are some real-world use cases:

  • AI Responsibility and Auditing: Blockchain can be used to audit AI systems, ensuring transparency and accountability. AI models, training data, and decision-making processes can be recorded on the blockchain, enabling auditing for bias, fairness, and compliance with regulations.
  • Decentralized AI: By combining blockchain and AI, it is possible to create decentralized AI systems where the AI model is trained and deployed across a network of nodes, rather than being controlled by a single entity. This can increase trust, transparency, and democratize access to AI capabilities.
  • AI-powered Supply Chains: AI and blockchain can be integrated to optimize supply chain operations. AI can analyze data from IoT sensors and blockchain can provide a tamper-proof record of transactions, enabling end-to-end visibility and automation.

Blockchain Use Cases

The conference highlighted various real-world applications of blockchain technology, including:

  • Food Supply Safety and Traceability: Blockchain can provide an immutable record of the entire food supply chain, from farm to table. This enables tracking of food products, ensuring safety, and identifying the source of contamination or quality issues.
  • Supply Chain Management and Logistics: Blockchain can streamline supply chain operations by providing a transparent and secure record of transactions, reducing paperwork, and enabling real-time tracking of goods.
  • Pharmaceutical Record-keeping and Drug Traceability: The pharmaceutical industry can leverage blockchain to maintain secure and tamper-proof records of drug manufacturing, distribution, and dispensation, preventing counterfeit drugs and ensuring patient safety.
  • Financial Services: Blockchain is being explored for applications such as cross-border payments, trade finance, and securities settlement, enabling faster and more secure transactions while reducing costs and intermediaries.
  • Identity Management: Blockchain-based identity management systems can provide individuals with control over their personal data, enabling secure and privacy-preserving sharing of identity information.

Quantum-Resistant Blockchain

  • With the potential threat of quantum computing to current cryptographic systems, the conference explored ways to make blockchain networks like Bitcoin resistant to quantum attacks, ensuring the long-term security of digital assets.

Private vs. Public Blockchains

  • Private Blockchains:
    Pros: Better control over network participants, increased transaction throughput, and enhanced privacy.
    ❌ Cons: Centralized control, reduced transparency, and potential for censorship.
  • Public Blockchains:
    Pros: Decentralized and transparent, no central authority, increased security through distributed consensus.
    ❌ Cons: Lower transaction throughput, potential for anonymity abuse, and lack of control over network participants.

    The decision to use a private or public blockchain depends on factors such as the level of trust required, the need for transparency or privacy, and the desired level of control over the network.

Consensus Mechanisms

Consensus mechanisms are essential for ensuring agreement and trust among nodes in a blockchain network. Here’s an overview of the consensus mechanisms that were mentioned during one of the talks I joined:

  • Proof of Work (PoW): Nodes compete to solve complex mathematical puzzles, and the winner gets to add the next block to the chain and earn a reward. Used in Bitcoin and Ethereum (currently).
  • Proof of Stake (PoS): Instead of computational power, nodes stake their cryptocurrency holdings to validate transactions and earn rewards. More energy-efficient than PoW.
  • Proof of Authority (PoA): A reputation-based mechanism where pre-approved nodes validate transactions based on their identity.

    The choice of consensus mechanism depends on factors such as decentralization, scalability, energy efficiency, and the level of trust required in the network.

Sad that was over, but the London Blockchain Conference 2024 showcased the transformative potential of blockchain technology across various industries and applications, from asset tokenization and AI responsibility to supply chain management and quantum-resistant blockchain networks.

Learned so much, these conferences always make me see things with other perspectives and also update myself, see what others are doing and how to solve some problems.

See you all next year 👋

Meetup On The Beach – Ministry of Test #Athens 2024

Hello hello 👋

First, I want to say a big thank you to Petros and all the Ministry of Testing Athens who received me and hosted this Meetup On The Beach – Athens on 30 May/2024 !

By far, it was the best meetup I’ve ever been to. The energy, the people, and the place were already amazing, but then adding the food, the weather, and obviously the quality of the talks and discussions just made it the icing on the cake! I don’t think they advertise how good it is 😂

Finding Your Voice – How to stop worrying and give the talk 

Sophie Küster was fantastic! She was very direct to the point and delivered simple messages that motivated people to give talks more often. Her tips were great, and they definitely resonated with me. Public speaking makes me really anxious too, and it took me a long time to gain the courage to go from blogging to speaking in public.

The tips:

  • Prepare yourself – Lots of practice, rehearsals and research
  • Be yourself and show your passion
  • Structure your presentation
  • No spelling mistakes 😬
  • Wear comfortable shoes 👠
  • Put some red lipstick on, joking this is just a reference for something Sophie often puts on to feel stronger when presenting, but you can find your own power move, like wearing a cowboy hat🤠

Thanks Sophie, hopefully see you again soon !

APIs for Browser Automation (Selenium, Cypress, Puppeteer, or Playwright)

The talk compared these four different tools for browser automation: Selenium, Cypress, Puppeteer, and Playwright. Selenium is the grandpa and senior in this space, but Cypress and Playwright are gaining more and more traction. Not surprised as they are easier to use and when working across different browsers, also the fact you don’t need to have waiting workarounds 😫

Boni Garcia even showed demos and the code comparing these tools for the same scenario ! Unfortunately my phone was taking horrible pictures, so I am sharing the slides here, much better !

Finally my Talk: A Tester’s Guide to Navigating the Wild West of Web3 Testing

As always I start first checking the level of the audience on Web3 knowledge and majority still has no idea what is Web3 or is a beginner, which makes me focus a lot in the beginning where I go through what is Web3 and Blockchain.

I always feel like I should give more examples, but then time is always something that holds me back a bit – Maybe I should remove the infrastructure part of the Blockchain and just focus on use cases ?

Then after going through the concepts, we talked about some extra resources, challenges and tools you can use when doing Web3 Tests:

  • Check this Blockchain Developer Roadmap for a comprehensive learning path (I only offered a brief overview during the talk).
  • This is a great Interactive Blockchain Demo for a hands-on understanding of blockchain functionality.
  • Here are some tools you can use for Web3 testing: Foundry, BitcoinJ, Hardhat, Embark, Web3.js, Remix-IDE, Synpress, Caliper, OpenZeppelin, Postman.

Check out the slides here !

Afterwards…

I DO LOVE the analysis part ❤️

Completely anonymous feedback at the end of the talk summarized that people loved the quiz at the end where we gave away some The Chaincademy swags for the top 3 places.

A good, friendly competition is always a good thing!

The feedback also shows that time was an issue. It seems like didn’t need that much time to discuss the infrastructure and more time was needed for use cases and explanations. Let’s see what I can do to improve for my next talk at Eurostar Conference next week !

The results can be seen here:

Who voted not sure ?

Big shout out to Angelos Mitsios for coming to me afterwards and making me think about a really good point about Blockchain Decentralisation:

While removing the middleman like banks for financial transactions with cryptocurrency is a big step, complete decentralization is difficult. We still need Internet providers and Electricity providers. Electricity can potentially be self-generated with solar panels, but internet access relies on complex infrastructure across vast distances.

And even with encryption tools like VPNs, governments can still disrupt internet access, highlighting the ongoing tension between technological freedom and government control. Ultimately, the focus should be on the practical applications of cryptocurrency (Long distance fast transactions without middleman: bankwallet to wallet) while acknowledging the limitations of true decentralization in today’s world (Still depend on middleman: Internet and Electricity Providers)

The Speakers !

Finally met these two after seeing them talking in so many events:

Boni Garcia is an Associate Professor at Universidad Carlos III de Madrid in Spain. He is an official committer at the Selenium project and the creator and maintainer of several projects, such as WebDriverManager or Selenium-Jupiter. He wrote the books Mastering Software Testing with JUnit 5 and Hands-On Selenium WebDriver with Java.

Sophie is a test automation engineer at cronn GmbH, a Bonn based IT company. No stranger to the universe’s gut punches, she is passionate about improving awareness and communication about mental health and self-care.

That’s all 👋 Meet you next week at Eurostar in Stockholm and Geek 2024 – EE Conference in London and my last conference of the year Automationstar in Vienna !

Dappeteer vs Synpress

You asked you got it !! JK 😂 , this was in my backlog for a long time and finally had time to write something about it. This literally summarises my life:

Not many people out there talking about Blockchain Tests, maybe Oleksandr Romanov and Rhian Lewis, so I usually resource to communities (Web3Tests, Synpress…) to see what others are doing.

It is a bit shocking as there are many well-known attacks in this technology and on top of that after deploying something to the Blockchain you can’t go back (immutability feature), so how come this phase is so neglected as making sure everything is alright is so crucial ?

I am doing a quick benchmark about the End-to-End Tests Web3 Frameworks that are out there, and yes you can always mock the Web3 and then you don’t rely on third party integrations, which you would do any Web2 application already. But hey, this is one option to use when you need it !

Here it is what I got from the two major and most popular tools to test Web3 Apps (DApps):

CriteriaSynpressDappeteer
Platform & Application SupportWeb3 applications (Dapps)Web3 applications (Dapps)
Supported TechnologiesTypeScript, JavascriptTypeScript, Javascript
Wallets supportedMetaMaskMetaMask snaps, but probably is outdated.
Testing ScopeE2E TestsE2E Tests
Testing Framework IntegrationPlaywright (as a plugin)
Support for Cypress is coming soon.
Playwright (as a plugin)
Puppeteer (as a plugin)
Ease of Use & Learning CurveEasy learning curve, requires JavaScript/Typecript knowledgeRequires JavaScript/Typescript knowledge
Reporting & AnalyticsDetailed reports with dashboards and integrationsBasic reporting, may require additional tools
Ease of setupEasy to set up with Node.js, yarn and npmEasy to set up with Node.js, yarn and npm
Browsers– Chrome/Chromium (+ Edge, Opera, Brave, Chromium-based browsers)
– Firefox
– Webkit (Safari)
– Chrome/Chromium (+ Edge, Opera, Brave, Chromium-based browsers)
– Webkit (Safari)
Community & SupportLarge and active community, extensive documentation and supportSmaller community, growing resources and documentation
Cost & LicensingOpen source and free to useOpen source and free to use
Scalability & IntegrationHighly scalable, integrates with CI/CD pipelinesLess information available, may require custom integrations
AccessibilitySupports accessibility testing with pluginsInformation not available.
CustomizationHighly customizable with plugins and extensionsHighly customizable with plugins and extensions

Let me know in the comments which option you went for and how was your experience with it 😃

Equal Experts Geek Conference 2023

Hey guys, 4 months ago I had a 5 minutes lightning talk about How the QA will look like in the future at the Equal Experts Conference.

We went through the evolution of the role and how it is right now, then we quickly talk about the trends that are coming so you can already prepare yourself to be up to date 🙂


In this 5-minute talk, we will quickly talk about the future of Quality Assurance (QA) position and discuss the evolution of the QA role in response to emerging trends.

The QA role has come a long way from its traditional focus on manual testing and bug detection. As technology advances, QA professionals are adapting to new demands and becoming integral contributors to the software development process.

The  future of QA position will be marked by AI Tests,  Tests in the Cloud, Web3 Tests, Alerting and Monitoring, along with strong soft skills. By embracing these trends and developing the necessary skills, QA professionals will be well-equipped to drive quality and innovation in the ever-changing software development industry.

AWS SUMMIT 2023

This month I quickly attended the AWS Summit 2023 and here are my highlights from the conference:

The Data Metaverse Experience

  • The metaverse is relevant to businesses, with several concepts and technologies already being utilised, like PWC is able to see what is the best place to start a coffee shop as they have enough data to show where the competitors are, business around where people go out for lunch, nearest public transports.
  • Enterprise applications, such as employee training and simulating operations, are currently leading the way in metaverse adoption.
  • The metaverse may experience cycles of boom and bust, similar to other innovations like AI and the internet.
  • It’s possible to separate the reality from the hype and take practical steps to meet your company’s metaverse needs.
  • The metaverse promises a realistic 3D digital world with persistent elements and decentralized control.
  • Business implications include virtual reality visualization, enhanced customer experiences, and parallel production in physical and virtual environments.
  • Companies are already using the metaverse for employee recruitment, collaboration, digital twins, customer experience enhancement, and marketing/selling virtual products.

DON’T TRUST ANYONE

Make business and tech people happy

  • Community practice is extremely important, so if you are delivery lead be sure you promote regular knowledge sharing sessions, so people can contribute and also advocate for it.
  • All the teams need to follow some standards so they can move faster and the learning curve is not too long.
  • Tackle the tech debt to prevent and reduce inefficiency.
  • Promote webinars among the teams and also demos so people feel inspired to adopt and more aware of the updates.
  • All of these points will create a continuous improvement culture, were people feel they can take initiatives and feel more satisfied with their work.
  • Align strategic technical improvements with business goal (This is kind obvious 😂 Try to make everyone happy and find a middle ground)
  • Continuous process to have technical challenges in the team. You know software engineers love to learn, this is what drives most of us.
  • Measure and prove impact of each technical improvement with metrics, and make sure it has minimum or zero impact on BAU.

And of course free lunch and coffee !! Joking, I didn’t even have lunch on that day 😂 Couldn’t watch all the talks I wanted, but was amazing to connect with like minded people, refresh my mind and learn new things!

Web3 Test Series: Lewis Prescott

Lewis Prescott

QA Lead at Cera Care (one of Europe’s fastest-growing companies). He talks about Contract API Testing: 99 minute workshops with Ministry of Testing, on Testers Island Discs and many meetups.

He provides services on how to get started with API Contract Testing, Contract Testing for Microservices, End to End Testing, Acceptance Test Driven Development!

What are contract tests, and how do they differ from smart contract tests?

 Contract testing is a framework for testing integrations between two services, for example an API and a mobile app. The contract is defined by the mobile application who requests data, shares the request and expected response with the API service which verifies the implementation matches the expectations. Imagine when you start developing a feature that has frontend and backend components. They must communicate with each other perfectly, in happy path and negative scenarios. These details are usually detailed within some form of documentation, but who is verifying that both sides have implemented according to the documentation? That’s where contracts come in.

Smart contract tests are also focused on testing agreements with the terms between contracts written into code, but the difference is that the contract that is compared against to is a contract deployed to a Blockchain. Same concept as normal contract testing but this time focused on the decentralised applications (DApps) and blockchain ecosystems.

Why are contract tests important in software development, and how do they differ from smart contract tests in blockchain development? 

Contract tests offer the ability to scale integration tests by using mocks and act as unit level tests. Large applications with many integration points can be verified quickly and without significant maintenance of test environments. There is plenty of logic such as http codes, required fields and error contents which can be verified via contracts without the need for heavy duty integration environments.

Smart contracts are the backbone of decentralized applications (DApps) and business logic. They help ensure that the code deployed on a blockchain accurately represents the intended business logic, functions correctly in different scenarios, and is resistant to security vulnerabilities, specially given the irreversible and immutable nature of blockchain transactions.

What are some of the challenges developers face when writing contract tests versus smart contract tests?

Contract tests has a bit overhead on setup, with provisioning the broker to store the contracts. Deciding whether you want to self host or use a SaaS solution. As well as the process shift of teams changing how they go about testing integrations. Moving from the authors of the API service writing their own tests to the consumer such as the mobile app writing tests. Often when implementing contract tests you already have integration tests, so persuading people to duplicate the effort can be a hard sell as well.

Smart Contract tests same as the Contract tests are not straight forward when you are starting specially as you need to have special knowledge to setup test networks, wallets, and tools. Another important point is the costs associated when deploying and testing smart contracts, especially when running large-scale or repeated tests. On top of those there is the blockchain specific challenges and security.

How do contract tests and smart contract tests differ in terms of the tools and frameworks used to implement them?

Contract testing most commonly uses Pact & Pactflow which supports multiple languages and frameworks such as graphql. Offering matchers and the ability to compare results makes implementing contract testing much easier. Pactflow offers a SaaS solution to store contracts securely and additional features to visualise dependents.

Smart contract tests are often implemented using dedicated blockchain development tools and language such as Truffle, Hardhat, Solidity. These frameworks provide additional features like contract deployment management, fixture data handling, and integration with test networks. Tools like Ganache provide local blockchain test networks that developers can use to deploy and test smart contracts.

How do contract tests and smart contract tests differ in terms of their level of complexity and the skills required to write them?

Contract testing gets complicated when you need to setup different states before the tests can run, for example data needs to be available within the API in order to test the specific scenario. The key skill though required is good communication and collaboration. Due to the teams now relying on each other to deploy and make changes. It’s important to communicate effectively and support each other’s changes. Contract tests also live next to the code, requiring a decent level of programming skills and knowledge of the application under test.

Smart contracts tests need to consider factors such as consensus mechanisms, gas costs, and security vulnerabilities, blockchain network, deploying contracts, and handling transactions. Additionally, skills in testing blockchain-specific functionality, such as testing for gas usage optimization and handling different network environments, are essential for writing effective smart contract tests.

Thanks for the participation Lewis ! It is always a pleasure to learn from one of the biggest leaders in the area ! 🙌

Web3 Test Series: Oleksandr Romanov

Oleksandr Romanov

Oleksandr Romanov is a Software Engineer in Test / Software Engineer from Dnipro, Ukraine.

He has 11+ years of experience in testing and test automation. His main area of expertise is building and leading test automation processes. He has worked with banking apps and payments services, CMS systems and mobile games. At the moment he is responsible for test engineering for a complex blockchain and blockchain-based applications.

He loves to share his knowledge in the form of articles and conference talks. Currently he contributes to these projects:

How can developers get started with building DApps on Web3, and what are some best practices to follow?

Decentralized applications in a nutshell very similar to the regular applications. From frontend part it is not different at all. The difference starts with the backend part. You need to learn what is blockchain, how it works, how to store data on-chain, how to create smart contracts and use oracles to fetch data from the world.

Best practice is to test smart contract code before the release. Due to the nature of blockchain, you can’t easily change the code after the release. That’s why in case of a bug, you have a huge risk to loose a lot of money and user’s credibility. Thus you need to put a lot of effort to test business logic and security of smart contract as much as possible.

What are some of the current trends and developments in Web3, and how might they shape the future of the internet?

Trends and developments in Web3 can be split into to major groups. 

First, there are totally new things – available and used mostly at the blockchain world: decentralized identities, zero-knowledge proofs, tokens and NFTs.

Second group – are the projects where people want to move successful business model from a Web2 to Web3 world. In some cases it is almost one-to-one movement, in other – it results in a totally new models. One of examples here are projects from the decentralized finances sector and any project with a prefix “decentralized-”:  web browsers, social media and video hosting platforms, file hosting like IPFS and many many others. 

What are the most important things to test when building a decentralized application (DApp) on Web3?

Functionality. One of the biggest differences building DApp is that you as an engineer do not have a full control of your backend – it is distributed among ten of thousands of computers around the world. The blockchain is constantly evolving and you to be aware of changes and how they can affect your application. 

That’s why you need to understand how your application deals with the blockchain, how data is stored and retrieved, how pays the fees, how you present on-chain data to your customers. The deeper your knowledge of a particular blockchain – the less obvious bugs you will encounter at your DApp.

Security. When dealing with decentralized applications the majority of bugs come from the purely written smart contracts (or any code working with the blockchain). Hundreds of millions of dollars are lost due to neglecting the question of security for DApps. You can check some (not all) known hacks for Solidity at solidity-by-example resource. 

So in-depth security testing are the must-have for such applications. There are security testing tools like Slither, Echidna, Manticore, MythX available. But as any security tool – they can’t provide 100% security guarantees. Additionally, there are separate companies or people who do security audit for smart contracts.  

Performance. You should also understand how DApps behave in terms of the performance. As blockchain of the DApp is partially or fully stored at the blockchain – you don’t have a direct influence at the performance of the network. So you need to build usef flows in such a way that application should be blocked until transaction is stable. Stability or correctness can be checked as side – process. But it is all depends on the type of the DApp. 

What tools and frameworks are available for testing smart contracts and other components of Web3 applications?

In Ethereum world the standard frameworks are Hardhat, Truffle or Brownie. All of them have nice toolset for keeping contracts testable and observable. 

If you want to use some other programming toolset for smart contract development – it is possible to simulate the network locally using Ganache.

The testing of the Dapp can be split onto various levels.

  • Unit tests for the frontend usually created by the developers in Javascript / Typescript
  • Unit tests for the smart contracts can be done using Solidity or Javascript. Or Python if you use Vyper.
  • Integration tests are usually implemented in Javascript as well. Hardhat for example offers integration with Mocha out of the box.
  • UI tests can be created at any available language, but in case of JS stack – it can be plain old Selenium WebDriver or it’s fancier competitors – Playwright or Cypress.
    • For wallet integration (like Metamask) there are some libraries available: synpress, dappeteer

How does Cardano Blockchain differ from other blockchain platforms like Ethereum?

Cardano has a lot of differences from other blockchains available on the market.  

  • Transaction model. instead of account-based transaction model (like in Ethereum), Cardano has UTXO model – similar to Bitcoin’s. More precisely – an extended UTXO model. 
  • Tokens. You don’t need to create special smart contracts to get new tokens on Cardano. Here tokens are natively supported along with the native currency – ADA. 
  • Consensus protocol. Cardano uses “Ouroboros” proof-of-stake protocol (in some variations) from the launch date. So the chain itself much greener and consumes less energy for producing blocks. Ethereum has only recently switched to proof-of-stake. 
  • Upgradability. It was a long and hard road, but now it is possible to update the main chain and protocol almost instantly and without a risk to get issues or a big forks.
  • Formal Verification. All new major technical improvements to the chain starts as a whitepapers and then formally proved by a scientist community. Only after that it become a code. 

What programming languages and development frameworks are used for building applications on Cardano?

At this time the main programming language for creating smart contracts at Cardano is Plutus. It is a Haskell-like language, that allows to build and test smart contracts before they are deployed. You can start to dig into Plutus from the documentation page. From the first sight Plutus may seem like a hard one – but it offers a better security and auditabilty comparing to Ethereum’s Solidity. 

In addition to Plutus, you can try Marlowe – the domain-specific language for financial contracts. It can work either with Haskell or with Javascript. 

If you want to learn how to create smart contracts using I can also recommend the Plutus Pioneer Program course. For better understanding you check a prerequisite course on Haskell. 

What resources and communities are available for learning and collaborating on Web3 development?

Official documentation is the first source of information about a particular blockchain or technology. Additionally, each major blockchain projects has it’s own forums and Discord communities. 

If you have some background in programming language, I can recommend the following resources:

From testing point of view – I definitely can recommend Web3 tests community. It is a very young community, but will be useful for those who want to understand testing in blockchain a little deeper.

Also – you can check Awesome Blockchain Testing repo in search for posts and whitepapers on testing in blockchain. 

To get a glance on how testing is done for Plutus on Cardano – check out Testing Plutus Smart Contracts series of blog posts. 

Thanks for the participation Oleksandr ! Amazing interview and a leader to follow in the web3 area! 🚀

London Blockchain Conference 2023

Last week I went to the London Blockchain Conference 2023 and was brilliant ! It provided a wealth of information, discussions, and real-world examples of how blockchain technology can drive innovation, improve trust (Specially with AI coming – Infocalypse), and transform various industries.

Some of the highlights over its three days were:

Day 1:

  • The conference opened with nChain Group CEO Christen Ager-Hanssen posing a question about the purpose of blockchain, eliciting answers ranging from profit to education and business.
  • Discussions focused on showcasing the potential of scalable and lawful blockchain technology to generate revenue.

Day 2:

  • The concept of improving trust with blockchain technology was the central theme of the day.
  • Keynote speaker Peter Schiff talked about how “digital gold” could replace fiat currencies like the dollar, emphasizing the role of blockchain in enabling this transition.
  • Presentations from the Philippines highlighted the country’s digital transformation efforts, including partnerships between government agencies and private companies like nChain.

Day 3:

  • The focus was on driving innovation with blockchain technology and looking towards the future.
  • Projects demonstrating real-world use cases for blockchain were showcased, such as the United Nations World Food Program’s “Building Blocks” project and Gate2Chain’s Trace application for supply chain traceability.
  • Code-along sessions provided practical insights on building blockchain-powered applications, and there was a keynote presentation by nChain Chief Scientist Dr. Craig Wright on leveraging blockchain for business efficiency and cost reduction.

It might be over, but you can still catch up on content you missed by viewing recordings from the event! You will need to register before but then you can access the past event that is going to be available for 1 year.