# InSpec tests vs. InSpec profiles

**URL:** <https://discourse.chef.io/t/inspec-tests-vs-inspec-profiles/16378>\
**Category:** Chef InSpec\
**Created:** [December 11, 2019, 6:44pm UTC](https://discourse.chef.io/t/inspec-tests-vs-inspec-profiles/16378 "2019-12-11T18:44:44Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![newatlantis](https://avatars.discourse-cdn.com/v4/letter/n/b487fb/32.png) [@newatlantis](https://discourse.chef.io/u/newatlantis)\
**Post date:** [December 11, 2019, 6:44pm UTC](https://discourse.chef.io/t/inspec-tests-vs-inspec-profiles/16378/1 "2019-12-11T18:44:44Z")

</div>

Is it correct to say there are two main types of InSpec usage, namely:

- InSpec **profiles** -- each of which (per [https://www.inspec.io/docs/reference/profiles/](https://www.inspec.io/docs/reference/profiles/)) is a "is a standalone structure with its own distribution and execution flow" and always includes an inspec.yml file
- InSpec **tests** -- each of which (per [https://www.inspec.io/docs/reference/plugin\_kitchen\_inspec/](https://www.inspec.io/docs/reference/plugin_kitchen_inspec/)) uses a subset of InSpec profile files and syntactic constructs, and is run via Test Kitchen using kitchen-inspec.

---

<div class="post-metadata">

**Author:** ![mandi\_walls](https://sea2.discourse-cdn.com/flex016/user_avatar/discourse.chef.io/mandi_walls/32/135_2.png) [@mandi\_walls](https://discourse.chef.io/u/mandi_walls)\
**Post date:** [December 12, 2019, 8:02pm UTC](https://discourse.chef.io/t/inspec-tests-vs-inspec-profiles/16378/2 "2019-12-12T20:02:09Z")

</div>

Howdy!

InSpec profiles are like Chef Cookbooks - they include groups of tests, called controls, that look at aspects of the system, and might have libraries and other stuff in them. Each control might be made up of several tests against the same resource or tests against multiple resources that have a similar goal. Profiles might have many controls that look at many resources, and those can be stored in one or more files. So a profile can be pretty flexible for what it is meant to be used for. There's some interesting baseline profiles at [https://github.com/dev-sec/](https://github.com/dev-sec/) that you can look at to get an idea of how all the pieces fit together.

"inspec\_tests" is a section of the markup for Test Kitchen. it's not particularly related to what the structures are called in InSpec, it's just a way of telling TK where to find the InSpec components, whether they are in a single local file or in a profile from a remote source or wherever.
