srowley

srowley

I have really enjoyed dialing in a set of static analysis tools and skills that help me help LLMs write better code. One gap I haven’t seen filled is what I will call targeted testing tools - there are plenty of analyzers and skills targeting test quality, organization, avoiding vacuous tests, using async tests, and so on, but has anyone seen/written something that provides good guidelines/guardrails for using property testing, mutation testing, performance testing and other types of testing tools that you don’t want to apply to everything, but which can be useful under the right circumstances?

If there is even a blog post, book, etc. that I could use as a reference for writing my own, that would interesting to hear about also. I’m generally familiar with these things conceptually, but haven’t had much of a chance to use them and build my own experience/intuition.

Showing Posts 1 to 3

dimitarvp

dimitarvp

Got no good answer for you yet as I am still formulating a few of mine and goading Fable into writing them when I have a little time, but can you share those that you already know and find not-yet-sufficient, please?

derek-zhou

derek-zhou

Man, now the work “skill” is tainted. Before, one learns a skill. Now, one writes, or plagiarizes a “skill”.

srowley

srowley OP

Here’s an example

I’ve used this and a few others from that library (nothing remotely close to all of them) as a starting point and adapted them. They get modified (probably too much) as the particular repo grows. Looking at one after considering this question I’d say probably modified too much, actually.

What has worked for me generally (not just testing related) is static checks first (Credo, Sobelow, hex.audit, Boundary) and skills as a sort of best-efforts layer beneath that. Often I can extract new static checks from skills after some experience with the domain. But aside from some Credo checks (built in and from others) I don’t feel like the test suite gets much guidance aside from “avoid async: false,” and “don’t do dumb/redundant tests.”

An example of a thing I am imagining would be the LLM looking out for when you have an encode/decode situation and testing the property that those two functions are the inverse of each other.

— All posts loaded —

Where Next? Top

Trending in Dev Env & Tools Top

AstonJ
Not sure I’m going to upgrade myself yet, but curious what others think: How are you finding it for dev? What are your thoughts of it g...
New
AstonJ
This just hit devtalk - best use of AI to date? Stop paying for software that has a free twin. 971 open-source replacements for 443 pai...
New
AstonJ
We first posted one of these threads back in 2017 - so let’s start a fresh one, and let’s use a site that was created by @davejs using Ph...
New
brightball
I’ve been enjoying great results on my personal projects using AI tools with Elixir recently, thanks largely to the guardrails that are a...
New
JosePamplona
Hi everyone, Over several Elixir projects I kept writing down what each one taught me and turning the setups I got right into something ...
New

Other Trending Topics Top

dominicletz
Hey there, I haven’t seen a list of useful Elixir specific skills for the popular AI tools yet so I’m starting one here with my first. ...
New
mudasobwa
I fully migrated to my own harness from Anthropic/Gemini and I think it’s time to share it. Welcome DSH, the DeepSeek Harness, fully writ...
New
KristerV
Hey. Is there anyone here who creates agents in their apps? Not talking about using agents, but creating them. I’m finding it pretty diff...
New
jimsynz
Beam Bots (or just BB for short) is a framework for building fault-tolerant robotics applications in Elixir using familiar OTP patterns. ...
New
webofbits
With AI doing more of the implementation work, I’ve been wondering how much coding I should deliberately keep doing myself. My main conc...
#ai
New
OndrejValenta
(I just needed to vent somewhere and LinkedIn is full of hope, or hype, I’m not sure which exactly) AI dream has many faces, but general...
New

We're in Beta

About us Mission Statement

Options

Thread Display Mode




Thread Preview

Skip Thread Previews