Comments (5)
I'm not sure I fully understand this. Are you suggesting adding a "smoke test" action to the base layer that other layers could easily register tests for? Can you give some examples of the types of tests you are envisioning? Also, how does tox fit into the picture for a deployed service?
from layer-basic.
I'm not fully up to speed on how bundletester
or amulet
plays into all of this yet. I was thinking more smoke tests like I would manually deploy the service and run tox (or a test runner) against the services after they've come up.
from layer-basic.
Smoke tests to verify a deployment do seem useful, but I'm not sure that tox is the right approach, as it is very oriented to doing unit tests of Python code.
In the big data charms, we have a few smoke test Juju actions and I could see creating a framework for having a single smoke-test
action that various layers can register test cases to instead of each defining their own separate action might well be useful to prevent conflicts and generally encourage the writing of smoke tests.
But then I start to wonder exactly what smoke tests could usefully be added by layers lower than the top-level charm layer? For example, how much could the apache-php layer usefully assert about the vanilla charm without specific knowledge of how the charm should respond and under what conditions? I think I just need more examples about what each layer could test.
from layer-basic.
Agreed, we can close this for now, I need to actually do more testing of my charms to get a feel for where I'm getting hungup and how to improve it.
from layer-basic.
Closing per last comment; re-open as necessary.
from layer-basic.
Related Issues (20)
- "charm build" broken by update to netaddr HOT 1
- Upgrades to focal with python3-setuptools-scm install break charm venv setup HOT 1
- Charm Dependency Checks during install hook fail when pip3 has git revision package HOT 4
- ImportError: cannot import name 'PackageFinder' from 'pip._internal.index' HOT 1
- Upgrade flag file created too early
- Disabling trace logs HOT 8
- Cannot uninstall PyYAML. It is a distutils installed project HOT 5
- layer-basic fails to install wheelhouse on hirsute due to pip 21 dependency resolution HOT 2
- OSM: Installing a proxy charm container fails, due to Python dependency issue HOT 3
- During Gnocchi charm upgrade, layer-basic failed to upgrade packages HOT 1
- Bootstrap fails with current pinset HOT 2
- [CIS L1] tmpfs hardening HOT 3
- How to include from pypi HOT 3
- Charm cannot build-on 20.04 because of No module named 'markupsafe' HOT 3
- Focal issues: "ModuleNotFoundError: No module named 'markupsafe'" and "AttributeError: type object 'Distribution' has no attribute '_finalize_feature_opts'" HOT 3
- python3-dev dependency issue
- New installs from master charm branch builds missing flit_scm wheel and need anyio pinning
- ModuleNotFoundError: No module named 'pkg_resources' after series upgrade to jammy HOT 7
- sniffio breakage on Focal with python 3.8.10 HOT 18
- Charms fail install hook if `python3-setuptools > 60` HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from layer-basic.